日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

vue+element使用動(dòng)態(tài)加載路由方式實(shí)現(xiàn)三級(jí)菜單頁面顯示的操作

瀏覽:160日期:2022-12-17 17:48:24

需要用到中間件的方式,這樣就可以實(shí)現(xiàn)了我們想要的方式

publish-center.vue

<template> <router-view></router-view></template><script> export default { }</script>

<el-menu :default-active='$route.path' @open='handleopen' @close='handleclose' @select='handleselect' unique-opened router v-show='!collapsed' > <div @click.prevent='collapse'> <i>|||</i> </div> <template v-for='(item,index) in $router.options.routes' v-if='!item.hidden'><el-submenu :index='index+’’' v-if='!item.leaf'> <template slot='title' ><i :class='item.iconCls'></i>{{item.name}}</template> <el-menu-item-group v-for='(child,indexs) in item.children' :index='child.path' :key='child.path' v-if='!child.hidden'> <!-- <el-menu v-if='!child.path' :default-active='child.path'> --> <el-submenu :index='child.path' v-if='child.z &&!item.leaf'> <template slot='title' class='child_title'><i :class='child.iconCls'></i>{{child.name}}</template> <el-menu-item v-for='(sun,i) in child.children' :index='sun.path' :key='sun.path' > {{sun.name}} </el-menu-item> </el-submenu> <!-- </el-menu> --> <el-menu-item :index='child.path' v-if='!child.z' :key='child.path'> {{child.name}} </el-menu-item> </el-menu-item-group> <!-- <el-menu-item v-if='child.path'>{{child.name}}</el-menu-item> --> <!-- </el-menu-item-group> --> <!-- <el-menu-item v-for='sun in child.children' :index='sun.path' :key='sun.path' v-if='!sun.hidden'> {{sun.name}}</el-menu-item> --> </el-submenu> <el-menu-item v-if='item.leaf&&item.children.length>0' :index='item.children[0].path'><i :class='item.iconCls'></i>{{item.children[0].name}}</el-menu-item> </template></el-menu>

路由部分:

{ path:’/recordQuery’, component:Home, name:’菜單1’, iconCls:’el-icon-search’, children: [ { path: ’carRecord’, z:’1’, component: () => import(’@/page/publish-center.vue’), name: ’菜單2’ , children:[{ path: ’/carRecord/passRecord’, component: passRecord, name: ’菜單’ }, ] }, ]},

補(bǔ)充知識(shí):Vue使用addRouter()動(dòng)態(tài)生成三級(jí)菜單的問題

標(biāo)題記錄一次vue使用addRouter動(dòng)態(tài)生成三級(jí)菜單欄的問題

1.addRouter()里面需要一個(gè)固定格式的數(shù)組:例如

import { asyncRoutes, constantRoutes } from ’@/router’/* Layout */import Layout from ’@/layout’/** * Use meta.role to determine if the current user has permission * @param roles * @param route */function hasPermission(roles, route) { if (route.meta && route.meta.roles) { return roles.some(role => route.meta.roles.includes(role)) } else { return true }}/** * Filter asynchronous routing tables by recursion * @param routes asyncRoutes * @param roles */export function filterAsyncRoutes(routes, roles, parentModules) { const res = [] parentModules.forEach(parentModule => { var tmp = {} tmp.path = parentModule.parentTargetUrl tmp.component = Layout tmp.name = parentModule.parentTargetUrl.substr(1) tmp.meta = {} tmp.meta.title = parentModule.parentModuleName tmp.meta.icon = ’dashboard’ tmp.meta.roles = roles tmp.children = [] parentModule.modules.forEach(module => { // XXXListPage var childrenTmpListPage = {} var childrenTmpEditPage = {} //childrenTmpListPage.path = ’/’ + module.targetName + ’ListPage’ childrenTmpListPage.name = module.targetName + ’ListPage’ childrenTmpListPage.meta = {} childrenTmpListPage.meta.title = module.moduleName childrenTmpListPage.meta.icon = ’dashboard’ childrenTmpListPage.meta.roles = roles //childrenTmpListPage.component = resolve => require([’@/page/’ + module.targetName.charAt(0).toUpperCase() + module.targetName.slice(1) + ’/list_page’], resolve) childrenTmpListPage.path = ’/’ + module.targetName + ’ListPage’ if(module.childrenModules != null && module.childrenModules != undefined && module.childrenModules != ''){ childrenTmpListPage.component = Layout }else{childrenTmpListPage.component = resolve => require([’@/page/’ + module.targetName.charAt(0).toUpperCase() + module.targetName.slice(1) + ’/list_page’], resolve) } childrenTmpListPage.children = [] // XXXEditPage // childrenTmpEditPage.path = ’/’ + module.targetName + ’EditPage’ // childrenTmpEditPage.name = module.targetName + ’EditPage’ // childrenTmpEditPage.meta = {} // childrenTmpEditPage.meta.title = module.moduleName // childrenTmpEditPage.meta.icon = ’dashboard’ // childrenTmpEditPage.meta.roles = roles // childrenTmpEditPage.hidden = true // childrenTmpEditPage.component = resolve => require([’@/page/’ + module.targetName.charAt(0).toUpperCase() + module.targetName.slice(1) + ’/edit_page’], resolve) // 三級(jí)菜單生成 var roleChildren = roles if(module.childrenModules != null && module.childrenModules != undefined && module.childrenModules != ''){ module.childrenModules.forEach(module =>{ var children2TmpListPage = {} var children2TmpEditPage = {} // childrenTmpListPage.path children2TmpListPage.path = module.targetName + ’ListPage’ alert(children2TmpListPage.path) children2TmpListPage.name = module.targetName + ’ListPage’ children2TmpListPage.meta = {} children2TmpListPage.meta.title = module.moduleName children2TmpListPage.meta.icon = ’dashboard’ children2TmpListPage.meta.roles = roleChildren children2TmpListPage.component = resolve => require([’@/page/’ + module.targetName.charAt(0).toUpperCase() + module.targetName.slice(1) + ’/list_page’], resolve) console.log(’@/page/’ + module.targetName.charAt(0).toUpperCase() + module.targetName.slice(1) + ’/list_page’) childrenTmpListPage.children.push(children2TmpListPage)}) } tmp.children.push(childrenTmpListPage) // tmp.children.push(childrenTmpEditPage) }) res.push(tmp) }) console.log(res) return res}const state = { routes: [], addRoutes: []}const mutations = { SET_ROUTES: (state, routes) => { state.addRoutes = routes state.routes = constantRoutes.concat(routes) }}const actions = { generateRoutes({ commit }, obj) { return new Promise(resolve => { let accessedRoutes = filterAsyncRoutes(asyncRoutes, obj.roles, obj.parentModules) commit(’SET_ROUTES’, accessedRoutes) resolve(accessedRoutes) }) }}export default { namespaced: true, state, mutations, actions}

三級(jí)路由重點(diǎn):

componment: 二級(jí)路由不能設(shè)置為NULL,必須存在,我設(shè)置的就是Layout(引用自@/layout)

path:路徑最前面不能使用'/'

以上這篇vue+element使用動(dòng)態(tài)加載路由方式實(shí)現(xiàn)三級(jí)菜單頁面顯示的操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Vue
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美精品观看| 在线观看视频免费一区二区三区| 青草国产精品| 日本成人在线网站| 日韩一区二区三区免费视频| 亚洲美女91| 亚洲精品乱码| 青青草91久久久久久久久| 日韩高清不卡一区二区| 日韩精品乱码av一区二区| 日韩激情啪啪| 国产精品片aa在线观看| 久久99视频| 国产66精品| 水蜜桃久久夜色精品一区| 黄色网一区二区| 日韩国产综合| 亚洲激情婷婷| 亚洲男人在线| 欧美国产精品| 日韩中文视频| 亚洲欧美日韩综合国产aⅴ| 亚洲免费毛片| 国产福利亚洲| 在线观看精品| 国产一级一区二区| 天堂va欧美ⅴa亚洲va一国产| 国产亚洲字幕| 高清av不卡| 99国产精品久久久久久久| 亚洲精品欧美| 国产一区二区三区不卡av | 天堂а√在线最新版中文在线| 日韩免费福利视频| 亚洲综合欧美| 国产精品免费大片| 神马日本精品| 日本在线一区二区三区| 精品久久一区| 尤物精品在线| 麻豆国产欧美日韩综合精品二区| 热三久草你在线| 爽爽淫人综合网网站| 欧美精品91| 99国产精品久久久久久久成人热| 日韩av影院| 亚洲天堂一区二区| 日本在线成人| 少妇精品导航| 国产日产一区| 91久久国产| 国产精品极品在线观看| 亚洲午夜久久久久久尤物| 日韩动漫一区| 国产一区视频在线观看免费| 91精品国产一区二区在线观看| 国内一区二区三区| 视频一区二区三区在线| 久久亚洲资源中文字| 亚洲欧美日韩一区在线观看| 精品精品99| 亚洲综合激情在线| 欧美三级精品| 国产精品一区二区精品视频观看| 在线视频观看日韩| 欧美国产日本| 麻豆9191精品国产| 国产精品精品| 亚洲tv在线| 伊人精品一区| 精品一区电影| 中文字幕日本一区二区| 成人亚洲一区| 日韩一区二区三区在线看| 三级精品视频| 国产精品nxnn| 蜜臀av性久久久久蜜臀aⅴ流畅| 98精品视频| 国产精品一区二区三区av麻| 视频一区二区欧美| 久久久久久久久丰满| 美女久久精品| 日本中文字幕一区二区视频| 亚州av乱码久久精品蜜桃| 欧美国产不卡| 日韩精品电影一区亚洲| 激情婷婷综合| 四虎国产精品免费观看| 国产一级成人av| 男女男精品网站| 婷婷激情久久| 色在线中文字幕| 欧美国产极品| 欧美日韩xxxx| 综合激情一区| av成人国产| 激情欧美丁香| 欧美日韩精品免费观看视欧美高清免费大片 | 国产91在线精品| 日韩1区2区日韩1区2区| 伊人精品一区| 日韩综合一区| 欧美91在线| 国产精品永久| 欧美日韩伊人| 日本久久一区| 日韩一区二区三区免费视频| 亚洲天堂免费| 美女精品在线观看| 日韩一级欧洲| 尤物在线精品| 夜夜嗨一区二区| 美女亚洲一区| 亚洲高清二区| 亚洲一级网站| 夜鲁夜鲁夜鲁视频在线播放| 高清日韩欧美| 成人一区而且| 日韩精品中文字幕第1页| 国产福利片在线观看| bbw在线视频| 91亚洲人成网污www| 精品视频在线你懂得| 免费日韩成人| 成人在线免费观看91| 国产乱码午夜在线视频| 日韩一区二区在线免费| 日本欧美不卡| 欧美日韩一二| 亚洲成人一区| 在线看片不卡| 日韩精品一区第一页| 玖玖玖国产精品| 亚洲久久一区| 亚洲精品自拍| 国产日韩精品视频一区二区三区| 国产精品手机在线播放| 久久午夜影院| 日韩啪啪电影网| 国产精品7m凸凹视频分类| 国产亚洲一区在线| 亚洲精品欧洲| 国产精品极品| 国产精品毛片一区二区在线看| 亚洲精品在线影院| 亚洲视频综合| 亚洲久久视频| 国产精品成人国产| 亚洲天堂资源| 亚洲精品va| 日本一区二区三区视频在线看 | 国产精品99精品一区二区三区∴ | 日本不卡视频在线观看| 青青国产精品| 97人人精品| 一本一道久久a久久精品蜜桃| 国产亚洲一区在线| 日本成人中文字幕| 高清久久一区| 亚洲美洲欧洲综合国产一区| 日韩在线麻豆| 久久影视三级福利片| 精品日韩视频| 中文字幕一区二区三区四区久久 | 制服诱惑一区二区| 日韩免费精品| 成人精品视频| 亚洲黄色在线| 国产一区 二区| 欧美日韩精品免费观看视欧美高清免费大片| 亚洲黑丝一区二区| 91精品美女| 久久精品123| 日韩一区二区三区免费视频| 国产精品成久久久久| 久热精品在线| 精品国产美女a久久9999| 在线亚洲自拍| 丁香婷婷久久| 免费视频一区二区| 美女毛片一区二区三区四区最新中文字幕亚洲 | 久久久国产亚洲精品| 中文亚洲免费| 国产丝袜一区| 欧美a级片一区| 国产精品1区| 国产亚洲午夜| 国产精品99一区二区三区| 美国欧美日韩国产在线播放| 高清不卡一区| 无码日韩精品一区二区免费| 福利一区在线| 91免费精品国偷自产在线在线| 久久精品青草| 国产精品白丝久久av网站| 巨乳诱惑日韩免费av| 福利一区和二区| 亚洲精品麻豆| 99国内精品| 欧美男人天堂|