refactor: 精简多级路由示例页面

This commit is contained in:
pany 2024-11-26 16:02:50 +08:00
parent 31b2a5ba82
commit 4bf0e7a998
9 changed files with 29 additions and 143 deletions

View File

Before

Width:  |  Height:  |  Size: 539 B

After

Width:  |  Height:  |  Size: 539 B

View File

@ -1,22 +1,29 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<h4> <h4>
<span>
三级及其以上路由缓存功能默认关闭需要请前往此配置文件中打开 三级及其以上路由缓存功能默认关闭需要请前往此配置文件中打开
</span>
<el-link <el-link
type="primary" type="primary"
href="https://github.com/un-pany/v3-admin-vite/blob/main/src/config/route.ts" href="https://github.com/un-pany/v3-admin-vite/blob/main/src/router/config.ts"
target="_blank" target="_blank"
> >
src/config/route.ts src/router/config.ts
</el-link> </el-link>
</h4> </h4>
<el-card header="二级路由 - menu1"> <el-card header="二级路由">
<router-view /> <router-view />
</el-card> </el-card>
</div> </div>
</template> </template>
<style lang="scss" scoped> <style lang="scss" scoped>
h4 {
display: flex;
align-items: center;
}
.el-link { .el-link {
font-size: 18px; font-size: 18px;
} }

View File

@ -2,7 +2,7 @@
import { ref } from "vue" import { ref } from "vue"
defineOptions({ defineOptions({
name: "Menu13" name: "Level3"
}) })
const text = ref("") const text = ref("")
@ -10,8 +10,8 @@ const text = ref("")
<template> <template>
<div class="app-container"> <div class="app-container">
<el-card header="三级路由缓存 - menu1-3"> <el-card header="三级路由">
<el-input v-model="text" /> <el-input v-model="text" placeholder="输入任意字符测试缓存" />
</el-card> </el-card>
</div> </div>
</template> </template>

View File

@ -1,17 +0,0 @@
<script lang="ts" setup>
import { ref } from "vue"
defineOptions({
name: "Menu11"
})
const text = ref("")
</script>
<template>
<div class="app-container">
<el-card header="三级路由缓存 - menu1-1">
<el-input v-model="text" />
</el-card>
</div>
</template>

View File

@ -1,7 +0,0 @@
<template>
<div class="app-container">
<el-card header="三级路由 - menu1-2">
<router-view />
</el-card>
</div>
</template>

View File

@ -1,17 +0,0 @@
<script lang="ts" setup>
import { ref } from "vue"
defineOptions({
name: "Menu121"
})
const text = ref("")
</script>
<template>
<div class="app-container">
<el-card header="四级路由缓存 - menu1-2-1">
<el-input v-model="text" />
</el-card>
</div>
</template>

View File

@ -1,17 +0,0 @@
<script lang="ts" setup>
import { ref } from "vue"
defineOptions({
name: "Menu122"
})
const text = ref("")
</script>
<template>
<div class="app-container">
<el-card header="四级路由缓存 - menu1-2-2">
<el-input v-model="text" />
</el-card>
</div>
</template>

View File

@ -1,17 +0,0 @@
<script lang="ts" setup>
import { ref } from "vue"
defineOptions({
name: "Menu2"
})
const text = ref("")
</script>
<template>
<div class="app-container">
<el-card header="二级路由缓存 - menu2">
<el-input v-model="text" />
</el-card>
</div>
</template>

View File

@ -135,81 +135,35 @@ export const constantRoutes: RouteRecordRaw[] = [
] ]
}, },
{ {
path: "/menu", path: "/level1",
component: Layouts, component: Layouts,
redirect: "/menu/menu1", redirect: "/level1/level2",
name: "Menu", name: "Level1",
meta: { meta: {
title: "级路由", title: "级路由",
svgIcon: "menu" svgIcon: "level"
}, },
children: [ children: [
{ {
path: "menu1", path: "level2",
component: () => import("@/pages/menu/menu1/index.vue"), component: () => import("@/pages/level1/level2/index.vue"),
redirect: "/menu/menu1/menu1-1", redirect: "/level1/level2/level3",
name: "Menu1", name: "Level2",
meta: { meta: {
title: "menu1" title: "二级路由",
alwaysShow: true
}, },
children: [ children: [
{ {
path: "menu1-1", path: "level3",
component: () => import("@/pages/menu/menu1/menu1-1/index.vue"), component: () => import("@/pages/level1/level2/level3/index.vue"),
name: "Menu1-1", name: "Level3",
meta: { meta: {
title: "menu1-1", title: "三级路由",
keepAlive: true
}
},
{
path: "menu1-2",
component: () => import("@/pages/menu/menu1/menu1-2/index.vue"),
redirect: "/menu/menu1/menu1-2/menu1-2-1",
name: "Menu1-2",
meta: {
title: "menu1-2"
},
children: [
{
path: "menu1-2-1",
component: () => import("@/pages/menu/menu1/menu1-2/menu1-2-1/index.vue"),
name: "Menu1-2-1",
meta: {
title: "menu1-2-1",
keepAlive: true
}
},
{
path: "menu1-2-2",
component: () => import("@/pages/menu/menu1/menu1-2/menu1-2-2/index.vue"),
name: "Menu1-2-2",
meta: {
title: "menu1-2-2",
keepAlive: true keepAlive: true
} }
} }
] ]
},
{
path: "menu1-3",
component: () => import("@/pages/menu/menu1/menu1-3/index.vue"),
name: "Menu1-3",
meta: {
title: "menu1-3",
keepAlive: true
}
}
]
},
{
path: "menu2",
component: () => import("@/pages/menu/menu2/index.vue"),
name: "Menu2",
meta: {
title: "menu2",
keepAlive: true
}
} }
] ]
}, },