vue+el-menu+vue-router实现动态导航条
导航栏组件template
<template>
<div class="sidebar">
<el-menu unique-opened :default-active="$route.path" class="my-menu" router background-color="#324157" text-color="#fff" >
<template v-for="(item , index) in $router.options.routes" v-if="item.meta.menuShow">
<el-submenu :index="item.path" v-if="item.children && item.children.length > 1">
<template slot="title">
{{item.meta.menuName}}
</template>
<el-menu-item v-for="(itemChild , index) in item.children" :index="itemChild.path" :key="index" v-if="itemChild.meta.menuShow">
<span>{{itemChild.meta.menuName}}</span>
</el-menu-item>
</el-submenu>
<el-menu-item :index="item.children[0].path" v-else>
{{item.children[0].meta.menuName}}
</el-menu-item>
</template>
</el-menu>
</div>
</template>
路由文件router/index.js
import Vue from 'vue';
import Router from 'vue-router';
Vue.use(Router) export default new Router({
routes: [
{
path: '/',
redirect: '/login',
meta: {
menuShow: false
}
},
{
path: '/login',
name: 'login',
component: Login,
meta: {
menuShow: false,
}
}, {
path: '/system',
name: 'system',
component: Home,
meta: {
menuShow: true, // 是否在导航栏中显示
menuName: '系统管理', // 导航栏中显示的名称
},
children: [
{
path: '/system/organization',
name: 'organization',
component: Organization,
meta: {
menuShow: true,
menuName: '组织架构',
}
},
{
path: '/system/userManage',
name: 'userManage',
component: UserManage,
meta: {
menuShow: true,
menuName: '用户管理',
}
},
{
path: '/system/systemSet',
name: 'systemSet',
component: SystemSet,
meta: {
menuShow: true,
menuName: '系统设置',
}
},
{
path: '/system/operationLog',
name: 'operationLog',
component: OperationLog,
meta: {
menuShow: true,
menuName: '操作日志',
}
},
]
},
]
})
vue+el-menu+vue-router实现动态导航条的更多相关文章
- Vue实现mp3音乐播放及动态进度条
今天碰到一个Vue点击mp3播放及进度条动态走动的小功能,记录一下: 首先是通过HTML5 audio标签引入音频: <template> <div class="x-fo ...
- 使用Vue.prototype在vue中注册和使用全局变量
在main.js中添加一个变量到Vue.prototype Vue.prototype.$appName = 'My App' 这样 $appName 就在所有的 Vue 实例中可用了,甚至在实例被创 ...
- Vue 2.0 + Vue Router + Vuex
用 Vue.js 2.x 与相配套的 Vue Router.Vuex 搭建了一个最基本的后台管理系统的骨架. 当然先要安装 node.js(包括了 npm).vue-cli 项目结构如图所示: ass ...
- Vue04——vue自定义事件、Router、Vue-cli、发布上线
一.Vue的自定义事件 点击任何一个按钮,按钮本身计数累加,但是每点击三个按钮中的一个,totalCounter 都要累加. <body> <div id="app&quo ...
- vue工程化与路由router
一.介绍 vue.js 是 目前 最火的前端框架,vue.js 兼具 angular.js 和 react.js 的优点,并剔除它们的缺点.并且提供了很多的周边配套工具 如vue-router ...
- vue教程3-05 vue组件数据传递、父子组件数据获取,slot,router路由
vue教程3-05 vue组件数据传递 一.vue默认情况下,子组件也没法访问父组件数据 <!DOCTYPE html> <html lang="en"> ...
- vue教程3-03 vue组件,定义全局、局部组件,配合模板,动态组件
vue教程3-03 vue组件,定义全局.局部组件,配合模板,动态组件 一.定义一个组件 定义一个组件: 1. 全局组件 var Aaa=Vue.extend({ template:'<h3&g ...
- vue+vuex+axios+echarts画一个动态更新的中国地图
一. 生成项目及安装插件 # 安装vue-cli npm install vue-cli -g # 初始化项目 vue init webpack china-map # 切到目录下 cd china- ...
- vue开发 - 根据vue-router的meta动态设置html里标签的内容
路由文件 :router/index.js import Vue from 'vue'import Router from 'vue-router'import index '@/view/index ...
随机推荐
- js实现正则判断手机号
//判断是否为手机号的正则表达式 function phoneFun(phones){ var myreg = /^[1][3,4,5,7,8,9][0-9]{9}$/; if (!myreg.tes ...
- H5调用百度地图导航
template <div class="map"> <div class="content_flex"><img src=&qu ...
- 对每一个IO操作的返回都要进行判断
对每一个IO操作的返回都要进行判断 我们业务代码中有很多进行mysql.redis.文件.curl等的io操作,对每一个io操作我们都要对其返回值进行判断,然后做对应的处理,加日志信息或者抛出异常状态 ...
- css导行下拉动画
<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" ...
- Dll注入技术之APC注入
APC注入的原理是利用当线程被唤醒时APC中的注册函数会被执行的机制,并以此去执行我们的DLL加载代码,进而完成DLL注入的目的,其具体流程如下: 1)当EXE里某个线程执行到SleepEx( ...
- 杂项:ionic
ylbtech-杂项:ionic ionic是一个用来开发混合手机应用的,开源的,免费的代码库.可以优化html.css和js的性能,构建高效的应用程序,而且还可以用于构建Sass和AngularJS ...
- idea不断提示=========>This file is indented with tabs instead of 4 spaces
file->other settings ->default settings
- Java中哪个JSON库的解析速度是最快的?
JSON已经成为当前服务器与WEB应用之间数据传输的公认标准,不过正如许多我们所习以为常的事情一样,你会觉得这是理所当然的便不再深入思考 了.我们很少会去想用到的这些JSON库到底有什么不同,但事实上 ...
- fastjson转jackson
使用fastjson有个内存oom的问题,我们应该尽量使用jackjson,为什么呢?因为fastjson会引发一个oom,很潜在的危险,虽然jackjson的api真的非常好用,对于解析json串来 ...
- javascript小技巧-js小技巧收集(转)
本文转载自:http://blog.csdn.net/ocean20/article/details/2498699 每一项都是js中的小技巧,但十分的实用! 1.document.write(&qu ...