Что такое watch

Ответ

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