changed after it was checked. Previous value: 'false'. Current value: 'true'. ??
меняй свойство внутри setTimeout
как правило, такое происходит, если не в тот момент меняются данные
Для себя запомнил так: происходит изменение (начинается перестройка/проверка всего дерева компонентов) в этот момент один из компонентов меняет состояние приложение (меняет свойство или значение в сервисе) из за этого Angular начинает проверку всего дерева еще раз (хотя эта проверка уже идет). Получается парадокс - изменение состояния приложения приводит к 2 одновременным изменениям. Это не логично. Раньше это прощалось в AngularJS. Сейчас нет.
Обычно такие ошибки, когда работаешь с промисами или observable. PrimeNG на многих компонентах выбрасывает подобные ошибки. Я делаю так - отсоединяю change detector в конструкторе, а потом в подписке на observable снова присоединяю (cdr.reattach) и принудительно cdr.detectChanges()
Обсуждают сегодня