前言:上一章我们队vuex中操作的几个方法Dispatch、Commit等进行了讲解;这一章节为进阶内容,我们着手这vuex仓库进行拆分。
GitHub:https://github.com/Ewall1106/mall
1、仓库拆分
- 当我们仓库代码体积比较大以后,我们需将
action
、mutation
和getter
分割到单独的文件,而不是放在index这一个文件中,大家也可以看看官网的vuex项目结构阐述。
2、注册引入
- 在
index.js
中导入这些文件并暴露出去。
3、文件内容
- 然后,我们在拆分的各个文件中,将先前在index.js中相对应的操作内容复制迁移。
// actions.js
export default {
changeCity(ctx, city) {
ctx.commit('changeCity', city)
}
}
// mutations.js
export default {
changeCity(state, city) {
state.city = city;
}
}
// state.js
export default {
city: '杭州'
}
这样,我们就对整个vuex仓库进行了一个初步的拆分。
4、其它
以前我也写过几篇关于vuex的文章,感兴趣的话大家可以移步看看:
下章我们就说说mapGetters
、mapMutation
、mapState
这几个方法。