【发布时间】:2019-10-22 11:50:02
【问题描述】:
我正在尝试使用 rxjs 主题在组件之间共享数据,并且我已经在组件中使用了该数据
Component.html
<div class="spinner-container" *ngIf="loading">
<div class="spinner-item">
<nx-spinner nxSize="large"></nx-spinner>
</div>
</div>
component.ts
ngOnInit(){
setTimeout(()=>{
this.commonService.spinnerTrigger.subscribe((trigger)=>{
this.loading = trigger;
})
},100)
}
这是错误
ExpressionChangedAfterItHasBeenCheckedError:表达式已更改 检查后。以前的值:'ngIf: false'。当前值: 'ngIf: true'。
我找到了使用changedetectref 的解决方法,但我不认为它的好做法是解决此问题的任何其他方法
【问题讨论】:
-
如果您订阅 ngAfterViewInit 方法(没有超时),它是否有效?
-
使用变更检测器是正确的解决方案。
-
@MichaelDesigaud nop 仍然是错误
标签: javascript angular rxjs