commit
1ade90a114
@ -1,24 +1,19 @@
|
||||
import { InjectionKey } from 'vue';
|
||||
import { createStore, useStore as baseUseStore, Store } from 'vuex';
|
||||
import { createStore, useStore as baseUseStore, Store, ModuleTree } from 'vuex';
|
||||
import { RootStateTypes } from '/@/store/interface/index';
|
||||
import themeConfig from '/@/store/modules/themeConfig.ts';
|
||||
import routesList from '/@/store/modules/routesList.ts';
|
||||
import keepAliveNames from '/@/store/modules/keepAliveNames.ts';
|
||||
import tagsViewRoutes from '/@/store/modules/tagsViewRoutes.ts';
|
||||
import userInfos from '/@/store/modules/userInfos.ts';
|
||||
import requestOldRoutes from '/@/store/modules/requestOldRoutes.ts';
|
||||
|
||||
let modules: ModuleTree<object> = {}
|
||||
const modulesFiles: Record<string, Function> = import.meta.glob('./modules/*.ts')
|
||||
for (const path in modulesFiles) {
|
||||
const moduleName: string = path.replace(/(.*\/)*([^.]+).*/gi, '$2')
|
||||
let module: ModuleTree<object> = await modulesFiles[path]()
|
||||
modules = { ...modules, [moduleName]:module.default}
|
||||
}
|
||||
|
||||
export const key: InjectionKey<Store<RootStateTypes>> = Symbol();
|
||||
|
||||
export const store = createStore<RootStateTypes>({
|
||||
modules: {
|
||||
themeConfig,
|
||||
routesList,
|
||||
keepAliveNames,
|
||||
tagsViewRoutes,
|
||||
userInfos,
|
||||
requestOldRoutes,
|
||||
},
|
||||
modules
|
||||
});
|
||||
|
||||
export function useStore() {
|
||||
|
Loading…
Reference in New Issue
Block a user