我是我的angular 5组件的HTML文件,我已经将td
附加到了<tr *ngFor="let ar of ars">
<td *ngIf="showCompleteButton(ar)">
元素上:
showCompleteButton
我遇到的问题是.subscribe()
访问的元素可能尚未从网络中加载。当我需要的网络元素加载后,如何告诉页面重新运行该检查,以便按钮开始出现?
我知道如何通过网络调用*ngIf
在加载完成后采取行动,但我不知道该如何重新进行column-count
调用。
答案 0 :(得分:0)
是否可以在模板中使成员变量供您进行订阅工作?与ts
中一样:
showCompleteButton = {};
yourApiCall.subscribe(ars => {
this.ars = ars;
ars.forEach(ar => {
this.showCompleteButton[ar] = this.showCompleteButton(ar);
//do not know what type ar is but you get the idea...
});
和HTML:
<td *ngIf="showCompleteButton[ar]">
旁注:从模板调用函数对性能没有好处,它将在每个循环中反复调用。