我在检查元素属性的 Activity 状态时遇到麻烦。我在下面尝试过,但是即使元素的属性处于 Activity 状态,它也返回false-(存在.c-banner.active
)
ngAfterViewInit() {
const bannerElm = document.getElementById("banner");
const isActive = bannerElm && bannerElm.getAttribute("class")
.indexOf("c-banner.active") !== -1; // returned false
}
最佳答案
您可以使用classList.contains
方法检查元素是否具有 Activity 类。
ngAfterViewInit() {
setTimeout(() => {
const isActive = bannerElm &&
bannerElm.classList.contains('c-banner') &&
bannerElm.classList.contains('active');
}, 1000);
}
[更新]将其包装在setTimeout()中,并且它起作用了!万一其他人陷入了我以前遇到的组件初始化订单问题。