store中有属性modules

modules内部可包含多个module,module拥有自己的 state、mutation、action、getter、甚至是嵌套子模块

store中配置modules如下:

export default () => {

    const store = new Vuex.Store({
        state: defaultState,
        mutations: defaultMutations,//同步操作
        getters: defaultGetters,
        actions: {//实现异步操作
            incrementAsync(context, n) {
                //setTimeout(context.commit('increment', n), 2000);
                setTimeout(() => {
                    context.commit('increment', { num1: n })//这里面num1必须在mutations中存在。
                }, 1000)
            }
        },
        modules: {
            a: defaultModuleA
        }
    })
    //hot update---------
    if (module.hot) {
        module.hot.accept([
            './state',
            './mutation',
            './getters',
            './modulea'
        ], () => {
            const newState = require('./state').default
            const newMutation = require('./mutation').default
            const newGetters = require('./getters').default
            const newModuleA = require('./modulea').default

            store.hotUpdate({
                state: newState,
                mutations: newMutation,
                getters: newGetters,
                modules: {
                    a: newModuleA
                },
            })
        })

    }
    return store
}
View Code

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-28
  • 2023-01-16
  • 2021-12-16
  • 2021-12-28
猜你喜欢
  • 2022-12-23
  • 2021-12-24
  • 2021-11-09
  • 2022-12-23
  • 2022-01-13
  • 2021-05-28
  • 2022-12-23
相关资源
相似解决方案