mirror of
https://github.com/m-xlsea/ruoyi-plus-soybean.git
synced 2025-09-24 07:49:47 +08:00
refactor(projects): 优化路由声明,添加路由模块导入,规范路相关文件夹
This commit is contained in:
@ -1,21 +1,27 @@
|
||||
import type { CustomRoute } from '@/interface';
|
||||
import { setRouterCacheName, setSingleRoute } from '@/utils';
|
||||
import { setSingleRoute } from '@/utils';
|
||||
import { BasicLayout } from '@/layouts';
|
||||
import About from '@/views/about/index.vue';
|
||||
import { getRouteConst } from '../const';
|
||||
import { getRouteConst, routeName } from '../constant';
|
||||
|
||||
const { name, path, title } = getRouteConst('about');
|
||||
setRouterCacheName(About, name);
|
||||
|
||||
const ABOUT: CustomRoute = setSingleRoute(BasicLayout, {
|
||||
name,
|
||||
path,
|
||||
component: About,
|
||||
const ABOUT: CustomRoute = setSingleRoute({
|
||||
route: {
|
||||
name,
|
||||
path,
|
||||
component: About,
|
||||
meta: {
|
||||
requiresAuth: true,
|
||||
title,
|
||||
icon: 'fluent:book-information-24-regular'
|
||||
}
|
||||
},
|
||||
container: BasicLayout,
|
||||
meta: {
|
||||
requiresAuth: true,
|
||||
title,
|
||||
icon: 'fluent:book-information-24-regular'
|
||||
}
|
||||
order: 7
|
||||
},
|
||||
notFoundName: routeName('not-found')
|
||||
});
|
||||
|
||||
export default ABOUT;
|
||||
|
@ -1,18 +1,11 @@
|
||||
import type { CustomRoute } from '@/interface';
|
||||
import { BasicLayout, RouterViewLayout } from '@/layouts';
|
||||
import { setRouterCacheName } from '@/utils';
|
||||
import ComponentMap from '@/views/component/map/index.vue';
|
||||
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 { routeName, routePath, routeTitle } from '../const';
|
||||
|
||||
setRouterCacheName(ComponentMap, routeName('component_map'));
|
||||
setRouterCacheName(ComponentVideo, routeName('component_video'));
|
||||
setRouterCacheName(EditorQuill, routeName('component_editor_quill'));
|
||||
setRouterCacheName(EditorMarkdown, routeName('component_editor_markdown'));
|
||||
setRouterCacheName(ComponentSwiper, routeName('component_swiper'));
|
||||
import { routeName, routePath, routeTitle } from '../constant';
|
||||
|
||||
const COMPONENT: CustomRoute = {
|
||||
name: routeName('component'),
|
||||
@ -22,7 +15,8 @@ const COMPONENT: CustomRoute = {
|
||||
meta: {
|
||||
requiresAuth: true,
|
||||
title: routeTitle('component'),
|
||||
icon: 'fluent:app-store-24-regular'
|
||||
icon: 'fluent:app-store-24-regular',
|
||||
order: 3
|
||||
},
|
||||
children: [
|
||||
{
|
||||
|
@ -1,11 +1,8 @@
|
||||
import type { CustomRoute } from '@/interface';
|
||||
import { BasicLayout } from '@/layouts';
|
||||
import { setRouterCacheName } from '@/utils';
|
||||
import DashboardAnalysis from '@/views/dashboard/analysis/index.vue';
|
||||
import DashboardWorkbench from '@/views/dashboard/workbench/index.vue';
|
||||
import { ROUTE_HOME } from '../routes';
|
||||
import { routeName, routePath, routeTitle } from '../const';
|
||||
|
||||
setRouterCacheName(DashboardWorkbench, routeName('dashboard_workbench'));
|
||||
import { routeName, routePath, routeTitle } from '../constant';
|
||||
|
||||
const DASHBOARD: CustomRoute = {
|
||||
name: routeName('dashboard'),
|
||||
@ -14,10 +11,20 @@ const DASHBOARD: CustomRoute = {
|
||||
redirect: { name: routeName('dashboard_analysis') },
|
||||
meta: {
|
||||
title: routeTitle('dashboard'),
|
||||
icon: 'carbon:dashboard'
|
||||
icon: 'carbon:dashboard',
|
||||
order: 1
|
||||
},
|
||||
children: [
|
||||
ROUTE_HOME,
|
||||
{
|
||||
name: routeName('dashboard_analysis'),
|
||||
path: routePath('dashboard_analysis'),
|
||||
component: DashboardAnalysis,
|
||||
meta: {
|
||||
keepAlive: true,
|
||||
requiresAuth: true,
|
||||
title: routeTitle('dashboard_analysis')
|
||||
}
|
||||
},
|
||||
{
|
||||
name: routeName('dashboard_workbench'),
|
||||
path: routePath('dashboard_workbench'),
|
||||
|
@ -1,14 +1,9 @@
|
||||
import type { CustomRoute } from '@/interface';
|
||||
import { BasicLayout } from '@/layouts';
|
||||
import { setRouterCacheName } from '@/utils';
|
||||
import DocumentVue from '@/views/document/vue/index.vue';
|
||||
import DocumentVite from '@/views/document/vite/index.vue';
|
||||
import DocumentNaive from '@/views/document/naive/index.vue';
|
||||
import { routeName, routePath, routeTitle } from '../const';
|
||||
|
||||
setRouterCacheName(DocumentVue, routeName('document_vue'));
|
||||
setRouterCacheName(DocumentVite, routeName('document_vite'));
|
||||
setRouterCacheName(DocumentNaive, routeName('document_naive'));
|
||||
import { routeName, routePath, routeTitle } from '../constant';
|
||||
|
||||
const DOCUMENT: CustomRoute = {
|
||||
name: routeName('document'),
|
||||
@ -18,7 +13,8 @@ const DOCUMENT: CustomRoute = {
|
||||
meta: {
|
||||
requiresAuth: true,
|
||||
title: routeTitle('document'),
|
||||
icon: 'carbon:document'
|
||||
icon: 'carbon:document',
|
||||
order: 2
|
||||
},
|
||||
children: [
|
||||
{
|
||||
|
@ -1,14 +1,9 @@
|
||||
import type { CustomRoute } from '@/interface';
|
||||
import { BasicLayout } from '@/layouts';
|
||||
import { setRouterCacheName } from '@/utils';
|
||||
import Exception403 from '@/views/system/exception/403.vue';
|
||||
import Exception404 from '@/views/system/exception/404.vue';
|
||||
import Exception500 from '@/views/system/exception/500.vue';
|
||||
import { routeName, routePath, routeTitle } from '../const';
|
||||
|
||||
setRouterCacheName(Exception404, routeName('exception_404'));
|
||||
setRouterCacheName(Exception403, routeName('exception_403'));
|
||||
setRouterCacheName(Exception500, routeName('exception_500'));
|
||||
import { routeName, routePath, routeTitle } from '../constant';
|
||||
|
||||
const EXCEPTION: CustomRoute = {
|
||||
name: routeName('exception'),
|
||||
@ -18,7 +13,8 @@ const EXCEPTION: CustomRoute = {
|
||||
meta: {
|
||||
requiresAuth: true,
|
||||
title: routeTitle('exception'),
|
||||
icon: 'ant-design:exception-outlined'
|
||||
icon: 'ant-design:exception-outlined',
|
||||
order: 5
|
||||
},
|
||||
children: [
|
||||
{
|
||||
|
@ -1,14 +1,9 @@
|
||||
import type { CustomRoute } from '@/interface';
|
||||
import { BasicLayout } from '@/layouts';
|
||||
import { setRouterCacheName } from '@/utils';
|
||||
import FeatCopy from '@/views/feat/copy/index.vue';
|
||||
import FeatIcon from '@/views/feat/icon/index.vue';
|
||||
import FeatPrint from '@/views/feat/print/index.vue';
|
||||
import { routeName, routePath, routeTitle } from '../const';
|
||||
|
||||
setRouterCacheName(FeatCopy, routeName('feat_copy'));
|
||||
setRouterCacheName(FeatIcon, routeName('feat_icon'));
|
||||
setRouterCacheName(FeatPrint, routeName('feat_print'));
|
||||
import { routeName, routePath, routeTitle } from '../constant';
|
||||
|
||||
const FEAT: CustomRoute = {
|
||||
name: routeName('feat'),
|
||||
@ -18,7 +13,8 @@ const FEAT: CustomRoute = {
|
||||
meta: {
|
||||
requiresAuth: true,
|
||||
title: routeTitle('feat'),
|
||||
icon: 'ic:round-repeat'
|
||||
icon: 'ic:round-repeat',
|
||||
order: 4
|
||||
},
|
||||
children: [
|
||||
{
|
||||
|
@ -1,10 +1,8 @@
|
||||
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';
|
||||
import { transformRouteModules } from '@/utils';
|
||||
import type { ImportedRouteModules } from '@/interface';
|
||||
|
||||
export default [ROOT, DASHBOARD, DOCUMENT, COMPONENT, FEAT, EXCEPTION, MULTI_MENU, ABOUT];
|
||||
const modules = import.meta.globEager('./*.ts') as ImportedRouteModules;
|
||||
|
||||
const customRoutes = transformRouteModules(modules);
|
||||
|
||||
export default customRoutes;
|
||||
|
@ -1,10 +1,7 @@
|
||||
import type { CustomRoute } from '@/interface';
|
||||
import { BasicLayout, RouterViewLayout } from '@/layouts';
|
||||
import { setRouterCacheName } from '@/utils';
|
||||
import MultiMenuFirstSecond from '@/views/multi-menu/first/second/index.vue';
|
||||
import { routeName, routePath, routeTitle } from '../const';
|
||||
|
||||
setRouterCacheName(MultiMenuFirstSecond, routeName('multi-menu_first_second'));
|
||||
import { routeName, routePath, routeTitle } from '../constant';
|
||||
|
||||
const MULTI_MENU: CustomRoute = {
|
||||
name: routeName('multi-menu'),
|
||||
@ -13,7 +10,8 @@ const MULTI_MENU: CustomRoute = {
|
||||
redirect: { name: routeName('multi-menu_first') },
|
||||
meta: {
|
||||
title: routeTitle('multi-menu'),
|
||||
icon: 'carbon:menu'
|
||||
icon: 'carbon:menu',
|
||||
order: 6
|
||||
},
|
||||
children: [
|
||||
{
|
||||
|
@ -1,14 +0,0 @@
|
||||
import type { CustomRoute } from '@/interface';
|
||||
import { routeName, routePath } from '../const';
|
||||
import { ROUTE_HOME } from '../routes';
|
||||
|
||||
const ROOT: CustomRoute = {
|
||||
name: routeName('root'),
|
||||
path: routePath('root'),
|
||||
redirect: { name: ROUTE_HOME.name },
|
||||
meta: {
|
||||
isNotMenu: true
|
||||
}
|
||||
};
|
||||
|
||||
export default ROOT;
|
Reference in New Issue
Block a user