簡體   English   中英

為什么更改NgOninit上的父級數據不會導致ExpressionChangedAfterItHaHasBeenCheckedError?

[英]Why does changing a parents data on NgOninit not cause ExpressionChangedAfterItHasBeenCheckedError?

在這個例子下

parentComponent {
  text = 'dsfsdf';
}

childComponent implements Oninit {
    @Input() text;
   ngOnInit() {
     this.text = 'something else';
    }
}

為什么這不會引起ExpressionChangedAfterItHasBeenCheckedError? 發生此錯誤的簡單方法是什么?

這不會觸發ExpressionChangedAfterItHasBeenCheckedError因為更改@Input參數的值不會觸發任何事件給父對象,因此它根本不會重新呈現。

發生此錯誤的簡單方法:

<div>{{functionThatReturnsDifferentValueOnEveryCall()}}</div>

...

count = 0;

functionThatReturnsDifferentValueOnEveryCall() {
   return count++;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM