Назад к вопросам
Middle
3
Для чего нужен watch с опцией deep?
Компании, где спрашивали
Ростелеком
Ответ от нейросети
sobes.tech AI
Опция deep в watch (например, во Vue.js) используется для отслеживания изменений во вложенных объектах или массивах. По умолчанию watch реагирует только на замену значения переменной, но не на изменение свойств внутри объекта.
Когда установлен deep: true, наблюдатель рекурсивно отслеживает все вложенные свойства, и при любом изменении внутри объекта или массива срабатывает callback.
Пример:
watch(
() => user,
(newVal, oldVal) => {
console.log('User data changed');
},
{ deep: true }
);
// Если user = { name: 'Ivan', address: { city: 'Moscow' } }
// и изменится user.address.city, то watch сработает только при deep: true
Это полезно, когда нужно реагировать на любые изменения в сложных структурах данных.