Хук DoCheck
позволяет интегрироваться в цикл обнаружения изменений и находить изменения в ссылках на объекты или в любых областях, где Angular не обнаружил изменения автоматически.Интерфейс выглядит следующим образом:
interface DoCheck {
ngDoCheck(): void;
}
, в зависимости от размера и сложности дерева компонентов, метод ngDoCheck
будет выполняться огромное количество раз , и может статьузкое место в производительности , если вы плохо реализуете код.Избегайте использования метода ngDoCheck
без необходимости.
При использовании свойств типа объекта Angular будет наблюдать за изменениями по ссылке на значение, то есть обнаруживает изменение всего значения, но не изменения вдочерние свойства.Это тот случай, когда мы собираемся использовать хук жизненного цикла DoCheck
и обнаруживать изменения в объекте.
Метод ngAfterViewChecked
представляет ловушку и интерфейс жизненного цикла AfterViewChecked
.Это позволяет вам настраивать отслеживание изменений, которое по какой-то причине не обрабатывается Angular.Поведение аналогично ловушке AfterContentChecked, но применяется к дочерним шаблонам представления, а не к проецируемому содержимому.
interface AfterViewChecked {
ngAfterViewChecked(): void;
}
В первую очередь DoCheck предназначен для изменений вашей бизнес-логики, которые не будут обнаруживаться угловыми в сценариях, как указано выше.AfterViewChecked
для отслеживания просмотра.
Надеюсь, это поможет !!!