Vuex使模块中的状态与其他模块中的函数发生突变



我在Vuex中有两个模块:

  • Auth(Auth.js(
  • 用户(User.js(

在我的用户模块中,我有以下操作:

const actions = {
[UPDATE_USER_ACCOUNT](context, payload) {
return new Promise(resolve => {
ESApiService.put("/api/user", payload)
.then(({ data }) => {
context.commit('[SET_AUTH]', data.data.user, { root: true })
//context.commit(SET_USER_ACCOUNT, payload);
resolve(data);
})
.catch(({ response }) => {
context.commit(SET_ERROR, response);
});
});
},
}

当前的问题是我得到以下错误:[vuex] unknown mutation type: [SET_AUTH]

我还尝试过:context.commit('SET_AUTH', data.data.user, { root: true })并得到这个错误:[vuex] unknown mutation type: SET_AUTH

SET_AUTH已在:AUTH.js中注册,如下所示:

[SET_AUTH](state, user) {
state.isAuthenticated = true;
state.user = user;
state.errors = {};
},

如何做到这一点?

如果您不使用名称空间,请尝试以下操作:

commit('SET_AUTH', data.data.user, { root: true })

如果您正在使用名称空间

commit('namespace/SET_AUTH', data.data.user, { root: true })

最新更新