Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

一级菜单 不需要二级菜单? #484

Closed
youngchen1987 opened this issue Mar 5, 2018 · 18 comments
Closed

一级菜单 不需要二级菜单? #484

youngchen1987 opened this issue Mar 5, 2018 · 18 comments
Labels

Comments

@youngchen1987
Copy link

比如用户管理功能,有用户列表,新增用户,编辑用户 三个功能 ,但是一级菜单只显示用户列表,新增用户,编辑用户是不现实在导航上的
但是如果按照
{
path: '/usermanage',
component: Layout,
name:"user",
redirect: 'noredirect',
meta: { permission: 15, title: 'usermanage', icon: 'user'},
children: [
{ path: 'index', component: _import('usermanage/index'), name:"usermanage", meta: {permission: 15,permissionlist: "1501,1502,1503" ,title: 'usermanage',icon: 'user'},},
{ path: 'edit', component: _import('usermanage/edit'), hidden: true, name: 'add_user'},
{ path: 'add', component: _import('usermanage/add'), hidden: true, name: 'edit_user'}
]
},

这样设置的话 就会包含二级菜单

@PanJiaChen PanJiaChen added the bug label Mar 5, 2018
@changpohouxue
Copy link

我也遇到这个问题了。。您解决了吗

@changpohouxue
Copy link

比如左侧导航点击 进入列表页 同时列表页的商品点击还要进入详情页。。

@seean-chan
Copy link

给路由加一个字段,然后在循环侧栏的时候做一下判断,让它不显示在侧栏
_20180306102952
_20180306103823

@changpohouxue
Copy link

@seean-chan 这个我也搞了 但是面包屑这些都不对了 商品列表->某个商品->商品详情页 这样才是对的

@youngchen1987
Copy link
Author

youngchen1987 commented Mar 9, 2018

找到一种解决方案 参考的是上一个版本的逻辑:

  1. 路由上增加 noDropdown: true, 字段
    {
    path: '',
    component: Layout,
    noDropdown: true,
    redirect: 'dashboard',
    children: [{
    path: 'dashboard',
    component: _import('dashboard/index'),
    name: 'dashboard',
    meta: { title: 'dashboard', icon: 'dashboard', noCache: true }
    }]
    }

2.在views\layout\components\Sidebar目录下的 SidebarItem.vue 修改为
router-link v-if="!item.hidden&&item.noDropdown&&item.children.length>0" :to="item.path+'/'+item.children[0].path" :key="item.children[0].name"

目前可以解决我的问题
但是面包屑的问题显示还是不正确 期待大神修复

@lixing0323
Copy link

我也遇到了。比如一个订单管理,一级菜单只需要一个列表,下属包括订单详情,订单修改等等内容,都是这个的子路由,但是不需要显示成为二级菜单。如果按照作者文章所属,左侧边栏会乱掉。

@lessfish
Copy link

感觉这个问题还是蛮重要的,期待修复下 @PanJiaChen

类似问题 #498 #449

@lessfish
Copy link

我直接新建了个一级菜单,然后 hidden 掉。。。先 hack 了再说

@PanJiaChen
Copy link
Owner

这周末更新版本

@justdoitweb
Copy link

有相同问题,期待解决

@lixing0323
Copy link

@PanJiaChen ,我现在是这样解决的。在SidebarItem.vue判断v-if="item.children.length===1的时候替换成
// 获取当前菜单下有多少个能显示的子菜单
getShowingChildrenCount(child, item) {
var showingCount = 0;
for (let i = 0; i < child.length; i++) {
var hidden = child[i].hidden;
showingCount = hidden === true ? showingCount : showingCount + 1;
}
return showingCount === 0;
}
}

@chaneyandyou
Copy link

我也遇到了同样的问题,期待解决一下

@PanJiaChen
Copy link
Owner

Fixed in de06619

不知道是否满足你们的需求?

@xiaozhanghui
Copy link

@maybelin 怎么解决的,大佬。

@airzhanglin
Copy link

相同问题,在当前版本下,二级路由下面新增了一个三级路由新增页面,设置了hidden为true,只是不显示在菜单菜单栏上,二级菜单还有折叠箭头符号

@lixing0323
Copy link

lixing0323 commented Jul 11, 2018 via email

@mynameismaosheng
Copy link

二级路由下面新增了一个三级路由新增页面,设置了hidden为true,
只是不显示在菜单菜单栏上,二级菜单还有折叠箭头符号

@mynameismaosheng
Copy link

mynameismaosheng commented Oct 16, 2018

二级路由下面新增了一个三级路由新增页面,设置了hidden为true,
只是不显示在菜单菜单栏上,二级菜单还有折叠箭头符号

目前的解决方案:
children: [{ path: 'a', meta: { title: '列表' }, component: () => import(''), children: [ { path: '', component: () => import(''), meta: { title: '列表' } }, { path: 'b', component: () => import(''), hidden: true, meta: { title: '添加' } } ] }]
出现的结果
面包屑:
列表/列表
列表/添加

左侧导航: 只显示 列表

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests