您好我想使用角度为2的Masonry jquery插件。 我通过服务加载数据。
loadAllNews (){
this.loadingNews = true;
this._dataService.getNews(1).first().subscribe(data=>{
this.newsArray = data;
this.showMoreNewsButton = false;
this.updateColumnHeight();
});
}
比我想运行函数updateColumnHeight()
来运行Masonry计算。
在函数内部我运行setTimeout来等待DOM
private updateColumnHeight() {
setTimeout(()=>{
let container = this._nativeElem.nativeElement.querySelector('.js-container');
let msnry = new Masonry( container, {
itemSelector: '.js-column-card',
gutter: 10,
});
this.loadingNews = false;
},100)
有没有办法等待DOM准备好或检查它我尝试使用ngAfterViewChecked
但是它会永远运行,我最终会没有内存问题。