diff --git a/packages/toolkits/pro/template/tinyvue/config/vite.config.base.ts b/packages/toolkits/pro/template/tinyvue/config/vite.config.base.ts index b44c6b6f..1f089374 100644 --- a/packages/toolkits/pro/template/tinyvue/config/vite.config.base.ts +++ b/packages/toolkits/pro/template/tinyvue/config/vite.config.base.ts @@ -39,6 +39,7 @@ const config = { }, define: { 'process.env': {}, + BUILD_TOOLS: "'VITE'" }, css: { preprocessorOptions: { diff --git a/packages/toolkits/pro/template/tinyvue/rspack.config.js b/packages/toolkits/pro/template/tinyvue/rspack.config.js index c0e1c721..633ccfca 100644 --- a/packages/toolkits/pro/template/tinyvue/rspack.config.js +++ b/packages/toolkits/pro/template/tinyvue/rspack.config.js @@ -32,6 +32,7 @@ const config = { 'import.meta.env.VITE_USE_MOCK': 'false', 'import.meta.env.VITE_MOCK_IGNORE': '"/api/user/userInfo,/api/user/login,/api/user/register,/api/employee/getEmployee"', 'import.meta.env.VITE_MOCK_SERVER_HOST': '"/mock"', + BUILD_TOOLS: "'RSPACK'", }) ], devServer: { diff --git a/packages/toolkits/pro/template/tinyvue/src/router/guard/menu.ts b/packages/toolkits/pro/template/tinyvue/src/router/guard/menu.ts index 9a0f0d58..2f03a8ac 100644 --- a/packages/toolkits/pro/template/tinyvue/src/router/guard/menu.ts +++ b/packages/toolkits/pro/template/tinyvue/src/router/guard/menu.ts @@ -1,3 +1,4 @@ + import { useMenuStore } from "@/store/modules/router"; import { nextTick } from "vue"; import { Router, RouteRecordRaw } from "vue-router"; @@ -25,8 +26,17 @@ export interface ITreeNodeData { locale: string; } const reg = /\.vue$/gim; -const views = import.meta.glob ? import.meta.glob('../../views/**/*.vue') : require.context('../../views', true, reg, 'sync'); -console.log(views) +let views = {} as any; +if(BUILD_TOOLS === 'VITE' || BUILD_TOOLS === 'WEBPACK'){ + views = import.meta.glob('../../views/**/*.vue') +}else if(BUILD_TOOLS === 'RSPACK'){ + const components = require.context('../../views', true, reg, 'sync'); + components.keys().forEach((path) => { + if(path.endsWith('.vue')){ + views[`../../views/${path.replace('./','')}`] = ()=>components(path); + } + }) +} const toRoutes = (menus: ITreeNodeData[]) => { const router: RouteRecordRaw[] = []; for (let i=0;i