Angular 2 / Angular5中的ExpressionChangedAfterItHasBeenCheckedError
错误消息:
错误错误:ExpressionChangedAfterItHasBeenCheckedError:Expression 检查后发生了变化。以前的值:' ng-untouched: 真'
当前值:'ng-untouched: false'
。
答案 0 :(得分:2)
我不确定你要用这个来实现什么,但这里有一个简单的stackblitz,其中有一个工作示例:https://stackblitz.com/edit/angular-bm9lyn
使用[(ngModel)]
时,您不必使用(ngModelChange)
事件。
答案 1 :(得分:0)
这里的问题是你正在使用(ngModelChange)
但是如果你想使用它,那么就像这样编码
<input type="checkbox" [(ngModel)]="result" (ngModelChange)="fnCheck($event)">
fnCheck(event) {
Promise.resolve(null).then(() => this.anyproperty = event);
//or
setTimeout(() => {
this.anyproperty = event;
});
}
通过使用promise,您将在更改检测周期后运行代码