patchValue по умолчанию испускает события, поэтому изменение формы внутри её valueChanges может повторно вызвать тот же обработчик.
Если подписаться на form.valueChanges и внутри обработчика вызвать patchValue для контрола этой же формы, что произойдёт и как избежать бесконечного цикла?
patchValue по умолчанию испускает события, поэтому изменение формы внутри её valueChanges может повторно вызвать тот же обработчик.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
patchValue по умолчанию испускает события, поэтому изменение формы внутри её valueChanges может повторно вызвать тот же обработчик.
Для служебного обновления используют control.patchValue(value, { emitEvent:false }) и при необходимости проверяют реальное изменение значения. Подавление события должно быть осознанным: другие подписчики его тоже не получат. Уничтожение компонента должно освобождать подписку.
Источник: angular.dev.