diff --git a/src/enum/route.ts b/src/enum/route.ts index 2bf7f929..9f957f9d 100644 --- a/src/enum/route.ts +++ b/src/enum/route.ts @@ -20,7 +20,8 @@ export enum EnumRoutePath { 'component_editor_quill' = '/component/editor/quill', 'component_editor_markdown' = '/component/editor/markdown', 'component_swiper' = '/component/swiper', - 'component_copy' = '/component/copy', + 'feat' = '/feat', + 'feat_copy' = '/feat/copy', 'multi-menu' = '/multi-menu', 'multi-menu_first' = '/multi-menu/first', 'multi-menu_first_second' = '/multi-menu/first/second', @@ -53,7 +54,8 @@ export enum EnumRouteTitle { 'component_editor_quill' = '富文本编辑器', 'component_editor_markdown' = 'markdown编辑器', 'component_swiper' = 'Swiper插件', - 'component_copy' = '剪贴板', + 'feat' = '功能示例', + 'feat_copy' = '剪贴板', 'multi-menu' = '多级菜单', 'multi-menu_first' = '一级菜单', 'multi-menu_first_second' = '二级菜单', diff --git a/src/router/modules/component.ts b/src/router/modules/component.ts index 07b1c9cb..d90309dd 100644 --- a/src/router/modules/component.ts +++ b/src/router/modules/component.ts @@ -7,14 +7,12 @@ import ComponentVideo from '@/views/component/video/index.vue'; import EditorQuill from '@/views/component/editor/quill/index.vue'; import EditorMarkdown from '@/views/component/editor/markdown/index.vue'; import ComponentSwiper from '@/views/component/swiper/index.vue'; -import ComponentCopy from '@/views/component/copy/index.vue'; setRouterCacheName(ComponentMap, ROUTE_NAME_MAP.get('component_map')); setRouterCacheName(ComponentVideo, ROUTE_NAME_MAP.get('component_video')); setRouterCacheName(EditorQuill, ROUTE_NAME_MAP.get('component_editor_quill')); setRouterCacheName(EditorMarkdown, ROUTE_NAME_MAP.get('component_editor_markdown')); setRouterCacheName(ComponentSwiper, ROUTE_NAME_MAP.get('component_swiper')); -setRouterCacheName(ComponentSwiper, ROUTE_NAME_MAP.get('component_copy')); const COMPONENT: CustomRoute = { name: ROUTE_NAME_MAP.get('component'), @@ -88,15 +86,6 @@ const COMPONENT: CustomRoute = { requiresAuth: true, title: EnumRouteTitle.component_swiper } - }, - { - name: ROUTE_NAME_MAP.get('component_copy'), - path: EnumRoutePath.component_copy, - component: ComponentCopy, - meta: { - requiresAuth: true, - title: EnumRouteTitle.component_copy - } } ] }; diff --git a/src/router/modules/feat.ts b/src/router/modules/feat.ts new file mode 100644 index 00000000..236fb04c --- /dev/null +++ b/src/router/modules/feat.ts @@ -0,0 +1,33 @@ +import type { CustomRoute } from '@/interface'; +import { EnumRoutePath, EnumRouteTitle } from '@/enum'; +import { BasicLayout } from '@/layouts'; +import { ROUTE_NAME_MAP, setRouterCacheName } from '@/utils'; +import FeatCopy from '@/views/feat/copy/index.vue'; + +setRouterCacheName(FeatCopy, ROUTE_NAME_MAP.get('feat_copy')); + +const FEAT: CustomRoute = { + name: ROUTE_NAME_MAP.get('feat'), + path: EnumRoutePath.feat, + component: BasicLayout, + redirect: { name: ROUTE_NAME_MAP.get('feat_copy') }, + meta: { + requiresAuth: true, + title: EnumRouteTitle.feat, + icon: 'ic:round-repeat' + }, + children: [ + { + name: ROUTE_NAME_MAP.get('feat_copy'), + path: EnumRoutePath.feat_copy, + component: FeatCopy, + meta: { + requiresAuth: true, + title: EnumRouteTitle.feat_copy, + fullPage: true + } + } + ] +}; + +export default FEAT; diff --git a/src/router/modules/index.ts b/src/router/modules/index.ts index 3b580e65..3bcf8565 100644 --- a/src/router/modules/index.ts +++ b/src/router/modules/index.ts @@ -2,8 +2,9 @@ import ROOT from './root'; import DASHBOARD from './dashboard'; import DOCUMENT from './document'; import COMPONENT from './component'; +import FEAT from './feat'; import EXCEPTION from './exception'; import MULTI_MENU from './multi-menu'; import ABOUT from './about'; -export default [ROOT, DASHBOARD, DOCUMENT, COMPONENT, EXCEPTION, MULTI_MENU, ABOUT]; +export default [ROOT, DASHBOARD, DOCUMENT, COMPONENT, FEAT, EXCEPTION, MULTI_MENU, ABOUT]; diff --git a/src/views/component/copy/index.vue b/src/views/feat/copy/index.vue similarity index 100% rename from src/views/component/copy/index.vue rename to src/views/feat/copy/index.vue