vue vuex mapstate 引入多个vuex里面js多个文件对应的state 应该怎么做

...mapState(['user'], {
      userInfo
    })

文件目录是这样的,由于业务比较负责,vuex采用的是多文件的modules模式,比如现在有一个user.js和一个projects.js. user.js 里面有state包含userInfo对象,projects.js里面state里面包含projectsInfo对象。

现在我想在组件里面一次性引入这两个js文件中的userInfo对象和projectsInfo对象。应该怎么使用?

上述代码是单个文件引入的,想试下怎样批量引入,

阅读 8.1k
4 个回答

...mapState('user',['userInfo'])
前面是命名空间。后面是参数

你看一下这样理解的对不对,你可以创建一个根级别的getters文件

clipboard.png

然后在getters.js文件中引入你想要获取state数据的文件

clipboard.png

然后将getters.js文件挂载在index.js文件中

clipboard.png

之后在需要引入数据的组件中,通过...mapGetters进行引入

clipboard.png

新手上路,请多包涵

我也遇到这样的情况,自己尝试了一下,就是再多声明...mapSate(),将另一个store仓库放进去
clipboard.png

...mapState({
   userInfo:(state)=>state.user.userInfo,
   projectsInfo:(state)=>state.projects.projectsInfo
})

这样?

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