什么是Modules?
Modules是Vuex的核心概念之一,他的具体作用是分割store。个模块拥有自己的 state、mutation、action、getter、甚至是嵌套子模块——从上至下进行同样方式的分割
在大型项目的时候需要模块化,这时候就得用Modules ,其中需要注意的是state的返回的是一个函数。
devtools:true/fals作用是让vue的调试工具不显示store
在分割出来的的模块局部状态,对于模块内部的mutation和getter,接受到的一个参数都是局部状态对象(state)但一状态数只有一个
namespaced:true, 在Modules切割的独立的组件中用来防止命名重复的
createNamespacedHelpers
可以针对某一个模块专门针对的进行扩展
import { createNamespacedHelpers, mapState } from "vuex";
const { mapGetters: a } = createNamespacedHelpers("One");
...a({
ac: "showC",
用法:
1:<div>{{$store.getters['b/dds']}}</div>
2:import {createNamespacedHelpers,mapState} from 'vuex'
const { mapGetters: a } = createNamespacedHelpers("One");
const {mapState:ba}= createNamespacedHelpers('One/a1')
3:computed:{
...a(['showC']),
...mapState({
msg1:state=>state.One.a1.msg
}),
...ba(['msg'])
}