From 8d048038eef569d27a9a125d5c7c0c56b9545f58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=A5=E6=B5=A9?= Date: Thu, 26 Dec 2024 18:51:16 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E7=AC=AC=E4=BA=8C?= =?UTF-8?q?=E5=B8=83=E5=B1=80=E9=A1=B5=E9=9D=A2=EF=BC=8C=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E8=B7=AF=E7=94=B1=E9=85=8D=E7=BD=AE=E4=BB=A5=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E6=96=B0=E5=B8=83=E5=B1=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/layouts/sakai-vue/AppMenu.vue | 6 ++---- src/pages/use-second-layout-1/index.page.vue | 11 +++++++++++ src/pages/use-second-layout-2.page.vue | 11 +++++++++++ src/plugins/router.ts | 5 +++-- typed-router.d.ts | 2 ++ vite.config.plugins.ts | 2 +- 6 files changed, 30 insertions(+), 7 deletions(-) create mode 100644 src/pages/use-second-layout-1/index.page.vue create mode 100644 src/pages/use-second-layout-2.page.vue diff --git a/src/layouts/sakai-vue/AppMenu.vue b/src/layouts/sakai-vue/AppMenu.vue index f88c8ec..5d83eaa 100644 --- a/src/layouts/sakai-vue/AppMenu.vue +++ b/src/layouts/sakai-vue/AppMenu.vue @@ -1,14 +1,12 @@ + + + +meta: + layout: second + diff --git a/src/pages/use-second-layout-2.page.vue b/src/pages/use-second-layout-2.page.vue new file mode 100644 index 0000000..973ea04 --- /dev/null +++ b/src/pages/use-second-layout-2.page.vue @@ -0,0 +1,11 @@ + + + + + + +meta: + layout: second + diff --git a/src/plugins/router.ts b/src/plugins/router.ts index b62df59..3f3adab 100644 --- a/src/plugins/router.ts +++ b/src/plugins/router.ts @@ -1,6 +1,6 @@ import { DataLoaderPlugin } from 'unplugin-vue-router/data-loaders'; import { createGetRoutes, setupLayouts } from 'virtual:meta-layouts'; -// import { setupLayouts, createGetRoutes } from 'virtual:generated-layouts'; +// import { createGetRoutes, setupLayouts } from 'virtual:generated-layouts'; import { createRouter, createWebHistory } from 'vue-router/auto'; import { handleHotUpdate, routes } from 'vue-router/auto-routes'; @@ -16,13 +16,14 @@ 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 { router }; +export { getRoutes, router }; export function install({ app }: { app: import('vue').App }) { app // Register the plugin before the router diff --git a/typed-router.d.ts b/typed-router.d.ts index 7bd3c01..5172a8e 100644 --- a/typed-router.d.ts +++ b/typed-router.d.ts @@ -33,6 +33,8 @@ declare module 'vue-router/auto-routes' { 'Primevue': RouteRecordInfo<'Primevue', '/primevue', 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.plugins.ts b/vite.config.plugins.ts index eb4693e..290fcc9 100644 --- a/vite.config.plugins.ts +++ b/vite.config.plugins.ts @@ -54,7 +54,7 @@ export function Plugins() { // https://github.com/dishait/vite-plugin-vue-meta-layouts MetaLayouts({ - /* skipTopLevelRouteLayout: true */ + // skipTopLevelRouteLayout: true, defaultLayout: 'sakai-vue/AppLayout', }),