您的位置:首页 > 房产 > 建筑 > vuex的actions返回结果类型是promise及actions方法互相调用

vuex的actions返回结果类型是promise及actions方法互相调用

2025/5/5 4:17:44 来源:https://blog.csdn.net/Zing_ing/article/details/139969346  浏览:    关键词:vuex的actions返回结果类型是promise及actions方法互相调用

this.$store.dispatch(‘logout’)返回的结果是Promise类型的
在这里插入图片描述
调用成功的情况下,返回状态为fulfilled,值为undefined。
所以可以直接进行.then操作:

this.$store.dispatch('logout').then((result) => {console.log(result);
});

因为 Vuex 的 action 是设计为可以处理异步操作的,并且当你调用 dispatch 方法时,它会返回一个表示该操作完成的 Promise。

拓展:

1.其余的store.getters、store.commit是同步的,则不返回promise。
2.在actions中可以通过dispatch调用actions中其他的方法
  actions: {resetToken ({ dispatch }) {dispatch('logout').then(() => {console.log("...");})},logout ({ commit }) {localStorage.removeItem('token')localStorage.removeItem('role')commit('setToken', '')commit('setRole', '')}},

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com