vuex进行分包管理

1、创建对应的目录结构

2、index.js文件的内容

import Vue from 'vue'
import Vuex from 'vuex'
import moduleIndex from "./module/module-index"//引入此分包

Vue.use(Vuex);

export default new Vuex.Store({
    modules:{//当前的分包模块如下
        moduleIndex
    }
})

3、module-index文件的内容


const state = {
    a: "初始数据",
};
const mutations = {//异步修改
    setA(state,params) {
        state.a = params;
    }
};
const actions = {};//同步修改
const getters = {
    getA:(state)=>(params)=>{//如果使用不到params,请不要传,不然会报错
        return state.a + params;
    }
};
export default {
    /* vuex中的store分模块管理,需要在store的index.js中引入各个模块,为了解决不同模块命名冲突的问题,
    将不同模块的namespaced:true,之后在不同页面中引入getter、actions、mutations时,需要加上所属的模块名 */
    namespaced: true,
    state,
    mutations,
    actions,
    getters
}

4、在需要的地方使用

this.$store.commit("moduleIndex/setA","修改数据");
console.log(this.$store.getters["moduleIndex/getA"]("获取数据"));

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章