Ответ
watch
в контексте Vue.js — это опция компонента, позволяющая отслеживать изменения определённых данных и выполнять функции при их изменении.
Пример:
export default {
data() {
return {
message: 'Hello'
}
},
watch: {
message(newVal, oldVal) {
console.log(`Message changed from ${oldVal} to ${newVal}`);
}
}
}
Особенности:
- Можно использовать для глубокого отслеживания объектов (
deep: true
). - Есть возможность немедленного вызова при создании компонента (
immediate: true
). - Альтернатива — computed свойства, если нужны производные данные.
В React аналогом будет useEffect
с зависимостями.