Bitte erklären Sie mir, warum ich diesen Fehler immer wieder bekomme: ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked.
Natürlich bekomme ich es nur im Dev-Modus, es passiert nicht in meinem Produktions-Build, aber es ist sehr ärgerlich und ich verstehe einfach nicht die Vorteile eines Fehlers in meiner Dev-Umgebung, der nicht auf dem Produkt angezeigt wird - -wahrscheinlich wegen meines Unverständnisses.
Normalerweise ist das Update einfach genug. Ich packe den Fehler verursachenden Code einfach in ein setTimeout wie folgt:
setTimeout(()=> {
this.isLoading = true;
}, 0);
Oder Kraft erfassen Änderungen mit einem Konstruktor wie folgt aus : constructor(private cd: ChangeDetectorRef) {}
:
this.isLoading = true;
this.cd.detectChanges();
Aber warum stoße ich ständig auf diesen Fehler? Ich möchte es verstehen, damit ich diese hackigen Korrekturen in Zukunft vermeiden kann.