Vue, слежение за изменениями во Vuex

Доброго времени суток.

Имеется некое хранилище с геттером getSalesByFilter:

const getters = {
    getSalesByFilter: state => filter => {
        filter = Object.assign(defaultFilter, filter);
        if (filter.groupBy === 'year') {
            return groupByYear(state.sales);
        }
    }
};

В компоненте используется следующий код:

computed: {
          ...mapGetters(['getSalesByFilter']),

            changeChartOptions () {
                console.log('Computed', this.getSalesByFilter(this.filter));
                return 'Computed' + Date.now();
            }
        },
        watch: {
            changeChartOptions () {
                console.log('Watcher')
            }
        },

При изменении состояния необходимо перерисовть график. Соответственно необходимо следить за геттером.

Как это правильно реализовать ? Почему код выше работает ?

P.S. Код выше работает (changeChartOptions), но только в том случае, если указано watch и computed свойства (в ином случае ничего не происходит).


Ответы (0 шт):