From 9ff89c19f3ea61a49fd57ca8c94d995d4452b0f4 Mon Sep 17 00:00:00 2001 From: aixianling Date: Mon, 23 Dec 2024 10:45:38 +0800 Subject: [PATCH] =?UTF-8?q?feat(build):=20=E4=BC=98=E5=8C=96=E8=B7=AF?= =?UTF-8?q?=E7=94=B1=E9=85=8D=E7=BD=AE=E5=B9=B6=E6=B7=BB=E5=8A=A0=20404=20?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在主路由中添加 mainEntry组件作为主入口 - 在主入口下添加所有扫描路由作为子路由 - 添加 404 页面作为未匹配路由的处理- 修改 mainEntry 组件,使用 router-view 替代动态组件 --- bin/build.js | 8 ++++++-- src/views/mainEntry.vue | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/bin/build.js b/bin/build.js index 010cbc31..65280a51 100644 --- a/bin/build.js +++ b/bin/build.js @@ -51,14 +51,18 @@ const createRoutes = (config = {}) => { {path: "/login", name: "登录", component: () => import('${signPage}')}, {path: '/dv', name: '数据大屏入口', component: () => import('../views/dvIndex')}, {path: '/v', name: 'Home', component: () => import('../views/home'), children: [ - ${routes.map(e => { + {path:'/',name:'mainEntry', component:()=>import('../views/mainEntry'),children:[ + ${routes.map(e => { // 解构每个路由的属性,用于生成路由配置 const {name, label, esm} = e // 生成单个路由配置的字符串表示 return `{name:"${name}",label:"${label}",path:"${name}",component:()=>import("../${esm}")}` - }).join(',\n')} + }).join(',\n')}, + {path: '*',name: '404',component: ()=>import('../views/building')}, + ]} ]}, {path: '/', name: "init"}, + ]`) // 扫描完毕,使用chalkTag标记任务完成 chalkTag.done("扫描完毕") diff --git a/src/views/mainEntry.vue b/src/views/mainEntry.vue index 982e7c0b..964dd738 100644 --- a/src/views/mainEntry.vue +++ b/src/views/mainEntry.vue @@ -5,7 +5,7 @@ - +