Anm*_*l G 8 javascript jquery html5 angular
我使用Angular 4作为我的网页模板.在构造函数内部调用HTTP get方法后生成HTML,其响应创建HTML.
以上工作正常.
我也在使用带有Angular的jQuery并试图在这个页面上初始化一个函数.
$(function() {
Books.init();
});
Run Code Online (Sandbox Code Playgroud)
我试过在各种生命周期钩子里面调用上面的代码.例如,ngOnInit(),ngOnChanges(),ngDoCheck,ngAfterViewInit(),ngAfterContentInit()但仍然在API响应完全呈现视图之前调用代码.
有没有办法得到一个事件,以确保视图完全呈现,然后我可以加载我的jQuery?
请注意:我已经在setTimeOut调用中调用了这个函数,时间延迟很小,这就可以了.
我遇到了同样的问题。我没有得到任何解决方案,所以我使用变量。
首先,计算出要渲染的元素数量。
bookCount: number = 0;
Run Code Online (Sandbox Code Playgroud)
然后在 ngAfterContentChecked() 中
ngAfterContentChecked() {
if(this.bookCount > 0 && this.bookCount == document.getElementsByClassName('bk-book').length)
{
this.getInitdata();
}
Run Code Online (Sandbox Code Playgroud)
这暂时对我有用,仍在寻找更好的解决方案。