Как правильно использовать Nuxt / Vue ... mapMutations - PullRequest
1 голос
/ 21 февраля 2020

Я пытаюсь использовать ...mapMutations с модулями Vuex в Nuxt. Мой вызов this.setDates(dates) приводит к ошибке:

this.setDates не является функцией

В моем магазине Nuxt: store/header.js

export const mutations = {
    setDates(state, dates) {
        state.dates = dates;
    },
}

В моем компоненте

methods: {
    ...mapMutations(
        {'header': ['setDates']},
    ),
    changeDate(dates) {
        this.setDates(dates);
    }
}

Ответы [ 2 ]

1 голос
/ 21 февраля 2020

Это попытается создать метод с именем header, используя мутацию setDates:

mapMutations(
  {'header': ['setDates']},
)

Я считаю, что вы хотите:

mapMutations('header', ['setDates'])

Это будет относиться header вместо пространства имен.

0 голосов
/ 21 февраля 2020

Вы отображаете свою мутацию как заголовок, я думаю, вам нужен call header () вместо this.setDates ()

из https://vuex.vuejs.org/guide/mutations.html

...mapMutations({
      add: 'increment' // map `this.add()` to `this.$store.commit('increment')`
    })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...