欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue+elementUI動態(tài)生成面包屑導航教程

 更新時間:2019年11月04日 14:55:30   作者:sun shying  
今天小編就為大家分享一篇vue+elementUI動態(tài)生成面包屑導航教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

效果如下所示:

項目需要動態(tài)生成面包屑導航,并且首頁可以點擊.其余為路徑顯示

<el-menu :unique-opened="true" router :default-active="$route.path" @select="handleSelect">
    <div class="user-menu-box" v-for="menu in menus" :key="menu.id">
      <el-menu-item v-if="!menu.child" :index="menu.path">
        <icon :name="menu.icon" :w="20" :h="20"></icon>
        <span slot="title" v-text="menu.name"></span>
      </el-menu-item>
      <el-submenu v-if="menu.child" :index="menu.path">
        <template slot="title">
          <icon :name="menu.icon" :w="20" :h="20"></icon>
          <span slot="title" v-text="menu.name"></span>
        </template>
        <el-menu-item-group>
          <el-menu-item v-for="subMenu in menu.child" :key="subMenu.id" v-text="subMenu.name"
            :index="subMenu.path"></el-menu-item>
        </el-menu-item-group>
      </el-submenu>
    </div>
</el-menu>

上面的代碼是elementUI組件的樣式,根據(jù)項目需要做了修改,搬運的時候根據(jù)項目自己改改

export default {
  data () {
    return {
      activeMenu: '',
      indexBreadcrumbs: [],
      menus: [{
        id: '1',
        name: '門戶管理',
        icon: 'menhuguanli',
        path: '#2',
        child: [{
          id: '1-1',
          name: '輪播圖',
          path: '/backstage/protaManage/turns'
        }, {
          id: '1-2',
          name: '基礎數(shù)據(jù)',
          path: '/backstage/protaManage/basis'
        }, {
          id: '1-3',
          name: '分類管理',
          path: '/backstage/protaManage/classify'
        }, {
          id: '1-4',
          name: '內容發(fā)布',
          path: '/backstage/protaManage/content'
        }]
      }, {
        id: '2',
        name: '我的云盤',
        icon: 'yunpan',
        path: '/backstage/yunManage'
      }, {
        id: '3',
        name: '管理菜單',
        icon: 'shezhi',
        path: '/backstage/menusManage'
      }, {
        id: '4',
        name: '編輯板塊',
        icon: 'fabuzhongxin',
        path: '/backstage/editPlate'
      }]
    }
  },
  watch: {
    $route () {
      this.handChange()
    }
  },
  computed: {
    breadcrumbList () {
      let breadcrumbs = []
      let menuList = this.menus
      this.indexBreadcrumbs.map(item => {
        for (let i = 0; i < menuList.length; i++) {
          if (item === menuList[i].path) {
            breadcrumbs.push(menuList[i])
            if (menuList[i].child) {
              menuList = menuList[i].child
            }
            break;
          }
        }
      })
      return breadcrumbs
    }
  },
  methods: {
    handChange () {
      this.$emit('hand-change', this.breadcrumbList)
    },
    handleSelect (index, indexPath) {
      this.indexBreadcrumbs = indexPath
    }
  },
  created () {
    this.handChange()
  }
}

上面的代碼是模擬的數(shù)據(jù),調用elememtUI的組件導航菜單的中的@select方法,有兩個參數(shù),可以自行打印

然后在computed中計算當前選中的是哪一部分,取到返回值,然后$emit傳給父組件,

<el-breadcrumb separator-class="el-icon-arrow-right">
   <el-breadcrumb-item :to="{ path: '/backstage' }">首頁</el-breadcrumb-item>
   <el-breadcrumb-item v-for="o in breadcrumbList" :key="o.id">{{o.name}}
   </el-breadcrumb-item>
 </el-breadcrumb>

父組件中取到子組件傳過來的值后,直接渲染就行了

相關文章

  • vue3中h函數(shù)的常用使用方式匯總

    vue3中h函數(shù)的常用使用方式匯總

    其實h()函數(shù)和createVNode()函數(shù)都是創(chuàng)建dom節(jié)點,他們的作用是一樣的,下面這篇文章主要給大家介紹了關于vue3中h函數(shù)的常用使用方式,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-08-08
  • Vue實現(xiàn)計數(shù)器案例

    Vue實現(xiàn)計數(shù)器案例

    這篇文章主要為大家詳細介紹了Vue計數(shù)器案例的實現(xiàn)方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • vue2.0實現(xiàn)選項卡導航效果

    vue2.0實現(xiàn)選項卡導航效果

    這篇文章主要為大家詳細介紹了vue2.0實現(xiàn)選項卡導航效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • vue做網頁開場視頻的實例代碼

    vue做網頁開場視頻的實例代碼

    這篇文章主要介紹了vue做網頁開場視頻的實例代碼,需要的朋友可以參考下
    2017-10-10
  • vue查詢數(shù)據(jù)el-table不更新數(shù)據(jù)的解決方案

    vue查詢數(shù)據(jù)el-table不更新數(shù)據(jù)的解決方案

    這篇文章主要介紹了vue查詢數(shù)據(jù)el-table不更新數(shù)據(jù)的問題及解決方案,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-12-12
  • uniapp開發(fā)打包多端應用完整方法指南

    uniapp開發(fā)打包多端應用完整方法指南

    這篇文章主要介紹了uniapp開發(fā)打包多端應用完整流程指南,包括了uniapp打包小程序,uniapp打包安卓apk,uniapp打包IOS應用,需要的朋友可以參考下
    2022-12-12
  • Vue計算屬性的使用

    Vue計算屬性的使用

    本篇文章主要介紹了Vue計算屬性的使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • vite項目無法使用zangodb包裝器的解決方案

    vite項目無法使用zangodb包裝器的解決方案

    vite作為新一代工具鏈,具有很多便利之處,配置也非常簡單,它很好地整合了Rollup和其他復雜的構建項,并提供了多種方向的典型腳手架模板,深受大家喜愛,本文給大家介紹了如何解決vite項目無法使用zangodb包裝器的問題,需要的朋友可以參考下
    2023-10-10
  • 這15個Vue指令,讓你的項目開發(fā)爽到爆

    這15個Vue指令,讓你的項目開發(fā)爽到爆

    這篇文章主要介紹了這15個Vue指令,讓你的項目開發(fā)爽到爆,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-10-10
  • vue.js 實現(xiàn)v-model與{{}}指令方法

    vue.js 實現(xiàn)v-model與{{}}指令方法

    這篇文章主要介紹了vue.js 實現(xiàn)v-model與{{}}指令方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-10-10

最新評論