no message
Former-commit-id: 18d72f99acbd878612074847bc7730ff4ce0f346 Former-commit-id: 8ad789c9af80f6c8478dd46b606dadc5773393e4 Former-commit-id: 1df8ae01a128fac4318afb3044dc6a151750f3b4
This commit is contained in:
@@ -6,4 +6,6 @@
|
|||||||
|
|
||||||
::: tip 出现位置
|
::: tip 出现位置
|
||||||
src/components/core/MainLayout/components/SideMenu/index.vue
|
src/components/core/MainLayout/components/SideMenu/index.vue
|
||||||
:::
|
:::
|
||||||
|
|
||||||
|
该组件会根据数据选择渲染 `<el-menu-item>` 或者 `<el-submenu>` 结构,并且在 `<el-submenu>` 中再次根据数据类型递归自身,最终生成 elementUI 的菜单组件结构,支持嵌套多级
|
||||||
@@ -1,24 +1,22 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<!-- 没有子元素 -->
|
|
||||||
<el-menu-item v-if="menu.children === undefined" :index="menu.path">
|
<el-menu-item v-if="menu.children === undefined" :index="menu.path">
|
||||||
<i :class="`fa fa-${menu.icon}`"></i>
|
<i :class="`fa fa-${menu.icon}`"></i>
|
||||||
<span slot="title">{{menu.title}}</span>
|
<span slot="title">{{menu.title}}</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
<!-- 有子元素 -->
|
|
||||||
<el-submenu v-else :index="menu.path">
|
<el-submenu v-else :index="menu.path">
|
||||||
<template slot="title">
|
<template slot="title">
|
||||||
<i :class="`fa fa-${menu.icon}`"></i>
|
<i :class="`fa fa-${menu.icon}`"></i>
|
||||||
<span slot="title">{{menu.title}}</span>
|
<span slot="title">{{menu.title}}</span>
|
||||||
</template>
|
</template>
|
||||||
<dd-menus v-for="(child, childIndex) in menu.children" :menu="child" :key="childIndex"/>
|
<dd-menu v-for="(child, childIndex) in menu.children" :menu="child" :key="childIndex"/>
|
||||||
</el-submenu>
|
</el-submenu>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
name: 'dd-menus',
|
name: 'dd-menu',
|
||||||
props: {
|
props: {
|
||||||
menu: {
|
menu: {
|
||||||
require: false,
|
require: false,
|
||||||
@@ -4,7 +4,7 @@
|
|||||||
:collapse="collapse"
|
:collapse="collapse"
|
||||||
:unique-opened="true"
|
:unique-opened="true"
|
||||||
:router="true">
|
:router="true">
|
||||||
<dd-menus v-for="(menu, menuIndex) in menus" :menu="menu" :key="menuIndex"/>
|
<dd-menu v-for="(menu, menuIndex) in menus" :menu="menu" :key="menuIndex"/>
|
||||||
</el-menu>
|
</el-menu>
|
||||||
<!-- <div v-if="sideMenu.filter(e => e.title).length === 0 && !collapse" class="dd-side-menu-empty">
|
<!-- <div v-if="sideMenu.filter(e => e.title).length === 0 && !collapse" class="dd-side-menu-empty">
|
||||||
没有菜单
|
没有菜单
|
||||||
@@ -22,7 +22,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
components: {
|
components: {
|
||||||
ddMenus: () => import('./components/ddMenus.vue')
|
ddMenu: () => import('./components/ddMenu.vue')
|
||||||
},
|
},
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
|
|||||||
Reference in New Issue
Block a user