如何在 Vuex 中导出模块
How to export module in Vuex
我想像下面这样导出 Vuex 模块:
export {
state,
mutations,
actions,
getters
}
但是当我试图将它包含在我的索引文件中时它抛出错误。类型不兼容的东西。我想我应该指定上面对象的类型,但我不知道它是什么类型。
import * as itemsModule from './app/store/items/module'
let store = new Vuex.Store({
modules: {
items: itemsModule
}
});
抛出:
is not assignable to parameter of type 'StoreOptions<{}>'.
Types of property 'modules' are incompatible.
此致
您导入和导出的方式不正确。
试试看:
module.js
export default {
state,
mutations,
actions,
getters
}
store.js
import itemsModule from './app/store/items/module'
解释:
你导入模块的方式,你得到了这种对象:
{
default: {
actions: {/** ... */}
getters: {/** ... */}
mutations: {/** ... */}
state: {/** ... */}
}
}
这不是商店期望的模块结构。
我想像下面这样导出 Vuex 模块:
export {
state,
mutations,
actions,
getters
}
但是当我试图将它包含在我的索引文件中时它抛出错误。类型不兼容的东西。我想我应该指定上面对象的类型,但我不知道它是什么类型。
import * as itemsModule from './app/store/items/module'
let store = new Vuex.Store({
modules: {
items: itemsModule
}
});
抛出:
is not assignable to parameter of type 'StoreOptions<{}>'. Types of property 'modules' are incompatible.
此致
您导入和导出的方式不正确。 试试看:
module.js
export default {
state,
mutations,
actions,
getters
}
store.js
import itemsModule from './app/store/items/module'
解释: 你导入模块的方式,你得到了这种对象:
{
default: {
actions: {/** ... */}
getters: {/** ... */}
mutations: {/** ... */}
state: {/** ... */}
}
}
这不是商店期望的模块结构。