角度组件ExpressionChangedAfterItHasBeenCheckedError中的Mat对话框错误

前端之家收集整理的这篇文章主要介绍了角度组件ExpressionChangedAfterItHasBeenCheckedError中的Mat对话框错误前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用Angular 6和Angular 6,就像ngOnInit一样,如果条件正确,我必须显示内容.

我有Dialog模块使用它我正在显示Dialog

`if (!this.checkforRestriction()) {
  this.loadContent(this.ReferenceID);
} else {
  this.dialogService.okmessage('',dialogMessage);
}`

错误:ExpressionChangedAfterItHasBeenCheckedError:表达式在检查后发生了变化.上一个值:’id:undefined’.当前值:’id:mat-dialog-0′.看起来这个视图是在其父级及其子级被脏检查后创建的.它是在变更检测钩子中创建的吗?
    at viewDebugError(core.js:8445)

我收到了这个错误.
请建议出现什么问题?

解决方法

如果不了解有关所有调用函数的大量细节,很难说出导致问题的原因.但是,通过执行以下操作,很可能会修复ExpressionChangedAfterItHasBeenCheckedError:

>尝试将代码移动到ngAfterViewInit生命周期钩子中,
>尝试将代码包装在setTimeout中.

最后,阅读Everything you need to know about the ExpressionChangedAfterItHasBeenCheckedError error.它应该让您更好地了解您所面临的错误.

猜你在找的Angularjs相关文章