vuex如何在一个公共js中将请求回来的数据存储到store中?

题目描述

在写一个vue项目,使用到vuex,现在我将公共的方法封装了成一个单独的js文件,在请求后台接口的时候,如何将请求回来的数据存储到store中?

相关代码

import store from '@/store'
async getUserInfo () { // 获取用户信息
    try {
      let user = await getUser()

      // store.default.dispatch('user/USER_GET_INFO', user)
      // 这一步注释的如何写?

      return user
    } catch (e) {
      return false
    }
}

你期待的结果是什么?实际看到的错误信息又是什么?

请各位大神指点下,谢谢~

阅读 5.1k
2 个回答

异步可以使用store中的actions,但是最终修改数据要使用mutations的接口。建议先参考官网写一写demo

你已经请求过来数据了,就没必要用actions了吧,直接commit不就行了?

store.commit('adduser',user)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进