OnChanges - это ловушка жизненного цикла, которая вызывается при изменении какого-либо свойства привязанной к данным директивы. ChangeDetectionStrategy - это стратегия, которую детектор изменений по умолчанию использует для обнаружения изменений.
В Angular.
enum ChangeDetectionStrategy {
OnPush: 0
Default: 1
}
OnPu sh есть два типа OnChanges. По умолчанию Angular использует стратегию обнаружения изменений ChangeDetectionStrategy.Default.
ngOnChanges () Если вы не укажете, Angular будет применять метод обнаружения изменений по умолчанию, который обнаруживает изменения для всего компоненты всякий раз, когда изменения сделаны. Стратегия по умолчанию ничего не подразумевает в приложении, поэтому каждый раз, когда что-то меняется в нашем приложении, в результате различных пользовательских событий, таймеров, обещаний XHR и т. Д. c. Обнаружение изменений будет выполняться для всех компонентов.
OnPu sh
@Component({
changeDetection: ChangeDetectionStrategy.OnPush
})
При использовании детекторов OnPu sh платформа проверяет компонент OnPu sh, когда любой из его (только его) входные свойства изменяются, когда он запускает событие или когда Observable запускает событие. Насколько я понимаю, OnPu sh - это простой способ ускорить работу приложений.
Изменение стратегии обнаружения
Здесь вы go для более подробного объяснения.