Ответ
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 с зависимостями.