Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
InJoyU
vue-element-admin
提交
c2495545
V
vue-element-admin
项目概览
InJoyU
/
vue-element-admin
与 Fork 源项目一致
从无法访问的项目Fork
通知
5
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vue-element-admin
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
c2495545
编写于
2月 28, 2019
作者:
王
王洪莹
提交者:
花裤衩
2月 28, 2019
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
perf[Sidebar]: optimize code logic (#1349)
上级
fc277c75
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
11 addition
and
22 deletion
+11
-22
src/views/layout/components/Sidebar/SidebarItem.vue
src/views/layout/components/Sidebar/SidebarItem.vue
+11
-22
未找到文件。
src/views/layout/components/Sidebar/SidebarItem.vue
浏览文件 @
c2495545
<
template
>
<div
v-if=
"!item.hidden
&&item.children
"
class=
"menu-wrapper"
>
<div
v-if=
"!item.hidden"
class=
"menu-wrapper"
>
<template
v-if=
"hasOneShowingChild(item.children,item) && (!onlyOneChild.children||onlyOneChild.noShowingChildren)&&!item.alwaysShow"
>
<app-link
:to=
"resolvePath(onlyOneChild.path)"
>
<el-menu-item
:index=
"resolvePath(onlyOneChild.path)"
:class=
"
{'submenu-title-noDropdown':!isNest}">
<item
v-if=
"onlyOneChild.meta"
:icon=
"onlyOneChild.meta.icon||
item.meta.icon
"
:title=
"generateTitle(onlyOneChild.meta.title)"
/>
<item
v-if=
"onlyOneChild.meta"
:icon=
"onlyOneChild.meta.icon||
(item.meta&&item.meta.icon)
"
:title=
"generateTitle(onlyOneChild.meta.title)"
/>
</el-menu-item>
</app-link>
</
template
>
<el-submenu
v-else
ref=
"subMenu"
:index=
"resolvePath(item.path)"
>
<
template
slot=
"title"
>
<item
v-if=
"item.meta"
:icon=
"item.meta.icon"
:title=
"generateTitle(item.meta.title)"
/>
<item
v-if=
"item.meta"
:icon=
"item.meta
&& item.meta
.icon"
:title=
"generateTitle(item.meta.title)"
/>
</
template
>
<
template
v-for=
"child in item.children"
>
<template
v-if=
"!child.hidden"
>
<sidebar-item
v-if=
"child.children&&child.children.length>0
"
v-for=
"child in item.children
"
:is-nest=
"true"
:item=
"child"
:key=
"child.path"
:base-path=
"resolvePath(child.path)"
class=
"nest-menu"
/>
<app-link
v-else
:to=
"resolvePath(child.path)"
:key=
"child.name"
>
<el-menu-item
:index=
"resolvePath(child.path)"
>
<item
v-if=
"child.meta"
:icon=
"child.meta.icon"
:title=
"generateTitle(child.meta.title)"
/>
</el-menu-item>
</app-link>
</
template
>
</template>
</el-submenu>
</div>
...
...
@@ -70,7 +59,7 @@ export default {
return
{}
},
methods
:
{
hasOneShowingChild
(
children
,
parent
)
{
hasOneShowingChild
(
children
=
[]
,
parent
)
{
const
showingChildren
=
children
.
filter
(
item
=>
{
if
(
item
.
hidden
)
{
return
false
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录