中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue+el-menu如何實現菜單欄無限多層級分類

發布時間:2022-03-28 13:53:37 來源:億速云 閱讀:817 作者:小新 欄目:開發技術

這篇文章主要介紹了vue+el-menu如何實現菜單欄無限多層級分類,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

具體內容如下

思路:數據格式須為數組內部多層嵌套模式,利用遞歸渲染菜單欄數據實現菜單多層級分類。

1.模擬菜單數據,引入封裝組件

<template>
  <div class="container">
    <el-container>
      <el-header>Header</el-header>
      <el-container class="container-body">
        <el-aside class="menu-container">
 
          <!-- 實現菜單多級分類 -->
          <el-menu
            default-active="1-1-1-1"
            background-color="#545c64"
            text-color="#fff"
            active-text-color="#ffd04b">
            <!-- 引入組件 -->
            <menu-tree :menuData="menuList"></menu-tree>
          </el-menu>
 
        </el-aside>
        <el-main class="main-container">Main</el-main>
      </el-container>
    </el-container>
  </div>
</template>
 
<script>
import MenuTree from '../../components/MentTree'
export default {
  components: {
    MenuTree
  },
  data () {
    return {
      menuList: [
        {
          index: '1',
          icon: 'el-icon-menu',
          name: '一級菜單01',
          children: [
            {
              index: '1-1',
              icon: 'el-icon-film',
              name: '二級菜單01',
              children: [
                {
                  index: '1-1-1',
                  icon: 'el-icon-date',
                  name: '三級菜單01',
                  children: [
                    {
                      index: '1-1-1-1',
                      icon: 'el-icon-monitor',
                      name: '四級菜單01'
                    }
                  ]
                },
                {
                  index: '1-1-2',
                  icon: 'el-icon-headset',
                  name: '三級菜單02'
                }
              ]
            },
            {
              index: '1-2',
              icon: 'el-icon-data-line',
              name: '二級菜單02'
            }
          ]
        },
        {
          index: '2',
          icon: 'el-icon-s-data',
          name: '一級菜單02'
        },
        {
          index: '3',
          icon: 'el-icon-s-operation',
          name: '一級菜單03'
        },
        {
          index: '4',
          icon: 'el-icon-user',
          name: '一級菜單04'
        }
      ]
    }
  },
  mounted () {},
  methods: {}
}
</script>

2.MenuTree組件內部實現菜單欄遞歸渲染

<template>
  <div>
    <template v-for="menu in this.menuData">
      <el-submenu :key="menu.index" :index="menu.index" v-if="menu.children">
          <template slot="title">
              <i :class="menu.icon"></i>
              <span slot="title">{{menu.name}}</span>
          </template>
          <menu-tree :menuData="menu.children"></menu-tree>
      </el-submenu>
      <el-menu-item :key="menu.index" :index="menu.index" v-else>
          <i :class="menu.icon"></i>
          <span slot="title">{{menu.name}}</span>
      </el-menu-item>
    </template>
  </div>
</template>
 
<script>
export default {
  props: ['menuData'],
  name: 'MenuTree'
}
</script>

3.完成效果展示

vue+el-menu如何實現菜單欄無限多層級分類

感謝你能夠認真閱讀完這篇文章,希望小編分享的“vue+el-menu如何實現菜單欄無限多層級分類”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

芜湖县| 黄陵县| 阿勒泰市| 老河口市| 双辽市| 额敏县| 广州市| 三明市| 克山县| 万宁市| 明星| 娄底市| 交口县| 枞阳县| 望城县| 德令哈市| 辽阳市| 铜鼓县| 霞浦县| 寻乌县| 绥宁县| 弥勒县| 巧家县| 贞丰县| 腾冲县| 莫力| 兴宁市| 襄垣县| 平谷区| 和平县| 洞头县| 乡城县| 舟山市| 英吉沙县| 南溪县| 怀柔区| 枣庄市| 平安县| 泊头市| 岳西县| 南宁市|