我正在使用具有公共数组变量的第三方组件。 首次初始化组件时,阵列的长度为零。 然后它通过一些外部rest调用填充,并且数组的每个元素在视图中呈现为div。 我想检测数组元素的渲染何时完成并执行某些操作。
我尝试过NgOnChanges,但是当数组发生变化时它永远不会被触发。
我还在IterableDiffers上尝试了NgDoCheck,它似乎在数组改变之前和之后被触发,即在数组元素被渲染之前和之后。
我想这种事情应该是可能的吗?
在我的组件中,我引用了第三部分,如
@ViewChild("acontainer") tablec: TableComponent;
这个组件有一个我可以用
访问的数组this.tablec.dataArray
我想监视这个数组。
答案 0 :(得分:0)
您必须重新分配数组才能创建更改。
例如,当您执行更新时,将数组设置为新数组,然后设置您的值。
例如
updateArr(value) {
this.arr = [];
this.arr = value;
}
编辑:您是否可以尝试将ViewChild创建为setter,应该在更新时调用
private _element: ElementRef;
@ViewChild('element') set element(el: ElementRef) {
this._element = el;
}