From b6a51c1245da53c5d47f58f3696880bceb394e08 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=A5=E6=B5=A9?= <37316281+yanhao98@users.noreply.github.com> Date: Fri, 27 Dec 2024 00:02:11 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=9B=B4=E6=96=B0=E8=B7=AF=E7=94=B1?= =?UTF-8?q?=E6=8F=92=E4=BB=B6=EF=BC=8C=E9=87=8D=E6=9E=84=E8=B7=AF=E7=94=B1?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E9=80=BB=E8=BE=91=E5=B9=B6=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=96=B0=E7=9A=84=E8=B7=AF=E7=94=B1=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- index.html | 2 +- src/layouts/sakai-vue/AppMenu.vue | 4 +- src/pages/router.page.vue | 56 ++++++++++++++++++++ src/pages/use-second-layout-1/index.page.vue | 11 ---- src/pages/use-second-layout-2.page.vue | 11 ---- src/plugins/router.ts | 15 ++---- typed-router.d.ts | 3 +- vite.config.ts | 7 ++- 8 files changed, 69 insertions(+), 40 deletions(-) create mode 100644 src/pages/router.page.vue delete mode 100644 src/pages/use-second-layout-1/index.page.vue delete mode 100644 src/pages/use-second-layout-2.page.vue diff --git a/index.html b/index.html index 9d79b5b..8c9563f 100644 --- a/index.html +++ b/index.html @@ -84,6 +84,6 @@ } catch (e) {} }; s.parentNode.insertBefore(tk, s); - })(document); + }) /* (document) */; diff --git a/src/layouts/sakai-vue/AppMenu.vue b/src/layouts/sakai-vue/AppMenu.vue index 5d83eaa..8e1e5b1 100644 --- a/src/layouts/sakai-vue/AppMenu.vue +++ b/src/layouts/sakai-vue/AppMenu.vue @@ -1,5 +1,5 @@ + + + diff --git a/src/pages/use-second-layout-1/index.page.vue b/src/pages/use-second-layout-1/index.page.vue deleted file mode 100644 index 6639246..0000000 --- a/src/pages/use-second-layout-1/index.page.vue +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - -meta: - layout: second - diff --git a/src/pages/use-second-layout-2.page.vue b/src/pages/use-second-layout-2.page.vue deleted file mode 100644 index 973ea04..0000000 --- a/src/pages/use-second-layout-2.page.vue +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - -meta: - layout: second - diff --git a/src/plugins/router.ts b/src/plugins/router.ts index 3f3adab..bac7a87 100644 --- a/src/plugins/router.ts +++ b/src/plugins/router.ts @@ -3,10 +3,10 @@ import { createGetRoutes, setupLayouts } from 'virtual:meta-layouts'; // import { createGetRoutes, setupLayouts } from 'virtual:generated-layouts'; import { createRouter, createWebHistory } from 'vue-router/auto'; import { handleHotUpdate, routes } from 'vue-router/auto-routes'; - +const setupLayoutsResult = setupLayouts(routes); const router = createRouter({ history: createWebHistory(import.meta.env.BASE_URL), - routes: /* routes ?? */ setupLayouts(routes), + routes: /* routes ?? */ setupLayoutsResult, strict: true, scrollBehavior: (_to, _from, savedPosition) => { if (savedPosition) { @@ -16,28 +16,19 @@ const router = createRouter({ } }, }); -const getRoutes = createGetRoutes(router); if (import.meta.hot) handleHotUpdate(router); if ($__DEV__) Object.assign(window, { router }); router.onError((error) => { console.debug('🚨 [router error]: ', error); }); -export { getRoutes, router }; +export { router, setupLayoutsResult, createGetRoutes }; export function install({ app }: { app: import('vue').App }) { app // Register the plugin before the router .use(DataLoaderPlugin, { router }) // adding the router will trigger the initial navigation .use(router); - if ('2' === ('1' as never)) { - const getRoutes = createGetRoutes(router); - const setupLayoutsResult = setupLayouts(routes); - - console.debug(`routes :>> `, routes); - console.debug(`getRoutes() :>> `, getRoutes()); // 获取路由表但是不包含布局路由 - console.debug(`setupLayoutsResult :>> `, setupLayoutsResult); - } } // ======================================================================== // =========================== Router Guards ============================== diff --git a/typed-router.d.ts b/typed-router.d.ts index 5172a8e..07e1254 100644 --- a/typed-router.d.ts +++ b/typed-router.d.ts @@ -31,10 +31,9 @@ declare module 'vue-router/auto-routes' { 'InfiniteLoading': RouteRecordInfo<'InfiniteLoading', '/infinite-loading', Record, Record>, 'MdPage': RouteRecordInfo<'MdPage', '/md-page', Record, Record>, 'Primevue': RouteRecordInfo<'Primevue', '/primevue', Record, Record>, + 'Router': RouteRecordInfo<'Router', '/router', Record, Record>, 'SomePage': RouteRecordInfo<'SomePage', '/some-page', Record, Record>, 'TsEnumUtil': RouteRecordInfo<'TsEnumUtil', '/ts-enum-util', Record, Record>, - 'UseSecondLayout1': RouteRecordInfo<'UseSecondLayout1', '/use-second-layout-1', Record, Record>, - 'UseSecondLayout2': RouteRecordInfo<'UseSecondLayout2', '/use-second-layout-2', Record, Record>, 'VueMacrosDefineRender': RouteRecordInfo<'VueMacrosDefineRender', '/vue-macros/DefineRender', Record, Record>, 'VueMacrosReactivityTransform': RouteRecordInfo<'VueMacrosReactivityTransform', '/vue-macros/ReactivityTransform', Record, Record>, 'VueMacrosReusableTemplate': RouteRecordInfo<'VueMacrosReusableTemplate', '/vue-macros/ReusableTemplate', Record, Record>, diff --git a/vite.config.ts b/vite.config.ts index 2c21905..795476e 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -32,7 +32,12 @@ export default defineConfig(({ mode, command }) => { if (warning.code === 'EVAL' && warning.id?.includes('node_modules/mockjs')) return; warn(warning); }, - output: env.VITE_SPLIT_CHUNKS === 'true' ? createSplitChunkOutput() : undefined, + + // https://cn.rollupjs.org/configuration-options/#output-assetfilenames + // output: env.VITE_SPLIT_CHUNKS === 'true' ? (await import('utils4u/rollup')).createSplitChunkOutput() : undefined, + output: { + minifyInternalExports: false, + }, }, }, };