Как следить за состоянием множества на странице?

Доброго времени дня, делаю блок фильтров товаров на сайте, который представляет набор полей с разными именами и значениями. в среднем на странице будет 3-5 фильтров. столкнулся с проблемой отслеживания состояния всех этих элементов как единого целого. Пробовал указывать v-model="filter['name']" и вешать вотчер на filter, но этот вотчер срабатывает только при изменение ключей массива, но не значений. На изменение значений не реагирует.

Как проще следить за состоянием набора полей фильтров, для последующего обновления страницы товара?
  • Вопрос задан
  • 108 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Vue.js
Пробовал указывать v-model="filter['name']" и вешать вотчер на filter, но этот вотчер срабатывает только при изменение ключей массива, но не значений. На изменение значений не реагирует.

По умолчанию изменения свойств объектов не отслеживаются.
Для этого надо указать deep: true в настройках watcher'а:

watch: {
  filters: {
    deep: true,
    handler(val) {
      console.log(JSON.stringify(val, null, 2));
    },
  },
},
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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