目的:让代码更好维护,让多种数据分类更加明确。
修改
store.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25const countAbout = {
namespaced:true,//开启命名空间
state:{x:1},
mutations: { ... },
actions: { ... },
getters: {
bigSum(state){
return state.sum * 10
}
}
}
const personAbout = {
namespaced:true,//开启命名空间
state:{ ... },
mutations: { ... },
actions: { ... }
}
const store = new Vuex.Store({
modules: {
countAbout,
personAbout
}
})开启命名空间后,组件中读取 state 数据:
1
2
3
4//方式一:自己直接读取
this.$store.state.personAbout.list
//方式二:借助mapState读取:
...mapState('countAbout',['sum','school','subject']),开启命名空间后,组件中读取 getters 数据:
1 | //方式一:自己直接读取 |
- 开启命名空间后,组件中调用 dispatch
1 | //方式一:自己直接dispatch |
- 开启命名空间后,组件中调用 commit
1 | //方式一:自己直接commit |