Задать вопрос
@zlodiak

Почему не срабатывает OnChanges-хук?

Есть родительский и дочерний компонент. Из родительского в дочерний посредством кликов по кнопкам передаются число и объект. Далее в шаблоне дочернего компонента переданные значения выводятся. Выводятся без проблем.

STACKBLITZ

Но в дочернем компоненте я реализовал хук OnChanges(), который тоже выводит эти значения. Проблема в том, что в случае прихода числа этот хук выполняется, а в случае прихода объекта - нет.

Я понимаю, что с точки зрения переменной, она как была объектом так им и осталась. Поэтому все происходящее логично. Но мне хотелось бы доработать код так чтобы OnChanges срабатывал в обоих случаях. Если такое возможно, то помогите пожалуйста реализовать.
  • Вопрос задан
  • 180 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик расширенный
    13 месяцев
    Далее
  • Академия Eduson
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
Решения вопроса 1
StivinKing
@StivinKing
Хук OnChanges не отрабатывает на объект, так как ссылка на объект не меняется. Это всё тот же самый объект, даже если содержимое объекта изменилось. Чтобы данный хук отработал, нужно создать новый объект или воспользоваться хуком DoCheck и самим прописать логику обнаружения изменения

Вот пример - ссылка
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы