vue后台路由都是以admin开头的,这样无限级菜单从admin开始,大家也是这么搞的吗?

我的意思就是渲染无限极菜单的时候要跳过admin层

        <MenuTree :data="routers[0].children"></MenuTree>

<template>

<div>

<label v-for="menu in data" :key="menu.name">

<el-sub-menu :index="menu.name" v-if="menu.children">

<template #title>

<el-icon>

<location/>

</el-icon>

<span>{{menu.meta.title}}</span>

</template>

<MenuTree :data="menu.children"></MenuTree>

</el-sub-menu>

<el-menu-item v-else :index="menu.name">

<span slot="title">{{menu.name}}</span>

</el-menu-item>

</label>

</div>

</template>

<script>

export default {

name: "MenuTree",

data() {

return {

};

},

components: {

// MenuTree: MenuTree

},

props: ["data"],

};

</script>

const permissionRouters = [

{

path: '/admin',

name: 'admin',

meta: {

title: '管理员页', 'icon': '',active: 0,

},

component: () => import('./pages/Layout.vue'),

children: [

{

path: 'crawler',

name: 'crawler',

meta: {

title: '爬虫', 'icon': '',active: 0,

},

children: [

{

name: 'list',

path: 'list',

meta: {

title: '爬虫列表', 'icon': '',active: 0,

},

component: () => import('./pages/Crawler.vue')

},

{

path: 'edit',

name: 'edit',

meta: {

title: '爬虫编辑', 'icon': '',active: 0,

},

component: () => import('./components/HelloWorld.vue')

}

]

},

{

path: 'crawler',

name: 'crawler1',

meta: {

title: '爬虫', 'icon': '',active: 0,

},

children: [

{

name: 'list1',

path: 'list',

meta: {

title: '爬虫列表', 'icon': '',active: 0,

},

component: () => import('./pages/Crawler.vue')

},

{

path: 'edit1',

name: 'edit',

meta: {

title: '爬虫编辑', 'icon': '',active: 0,

},

component: () => import('./components/HelloWorld.vue')

}

]

}

]

}

]


回答:

?????
所以你的管理后台和前台的展示页面放在一个项目里面的?

还是说因为部署在了二级目录,所以你增加了一个 /admin 菜单?


放在一起的话,可以直接取下标 1 开始。如果还有其他的菜单也会有隐藏的这种的,可以在 meta 中配置 hidden 属性,循环的时候判断一下就好了。


回答:

可以在meta中新增一个标识表示显隐的,然后在遍历时去根据这个标识判断要不要显示这层菜单

以上是 vue后台路由都是以admin开头的,这样无限级菜单从admin开始,大家也是这么搞的吗? 的全部内容, 来源链接: utcz.com/p/933439.html

回到顶部