Пожалуйста, объясните мне, почему я продолжаю получать эту ошибку: ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked.
Очевидно, что я получаю его только в режиме dev, этого не происходит в моей сборке, но это очень раздражает, и я просто не понимаю преимуществ наличия ошибки в моей среде dev, которая не будет отображаться на prod [ CN00] из-за моего непонимания.
Как правило, исправление достаточно просто, я просто обертываю код ошибки в setTimeout следующим образом:
setTimeout(()=> {
this.isLoading = true;
}, 0);
Или принудительно обнаруживайте изменения с помощью такого constructor(private cd: ChangeDetectorRef) {}
: constructor(private cd: ChangeDetectorRef) {}
:
this.isLoading = true;
this.cd.detectChanges();
Но почему я постоянно сталкиваюсь с этой ошибкой? Я хочу понять это, поэтому я могу избежать этих хакерских исправлений в будущем.