お世話になります。vuex初心者ですが、開発してる中でミューテーションエラーが解決できず質問させていただきました。
システム構成は、nuxt + vuex-module-decoratorsになります。
nuxt側からは、Actionを呼んで、ActionからMutationを呼んでるためエラーにならない認識だったのですがエラーになります。
@nuxt/cli v2.15.8
vuex-module-decorators:2.0.0
エラー内容が以下になります。
client.js?06a0:103 Error: [vuex] do not mutate vuex store state outside mutation handlers.
コードは以下になります。
vue
// test.vue async asyncData({params, $axios}) { testModule.setMyFriends(friends) }
vue
import { Mutation, Action, VuexModule, getModule, Module } from "vuex-module-decorators"; import store from "@/store/store"; import {Friend} from "~/@types/entity/Friend"; export interface TestState { } @Module({ dynamic: true, store, name: 'Test', namespaced: true }) class Test extends VuexModule implements TestState { friends: Friend[] = [] @Mutation setFriends(friends: Friend[]) { this.friends = friends } @Action public setMyFriends(friends: Friend[]) { this.setFriends(friends) } } export const barModule = getModule(Test);
まだ回答がついていません
会員登録して回答してみよう