Vue2和ElementUI编写的无限级菜单路由

文章转载自:www.javaman.cn

<template>
<div>
<el-menu :default-active="$route.path" class="el-menu-vertical-demo" :collapse="isCollapse" router>
<template v-for="item in menuList">
<el-submenu v-if="item.children" :index="item.path">
<template slot="title">
<i :class="item.icon"></i>
<span slot="title">{{ item.name }}</span>
</template>
<template v-for="child in item.children">
<el-menu-item :index="child.path">{{ child.name }}</el-menu-item>
</template>
</el-submenu>
<el-menu-item v-else :index="item.path">
<i :class="item.icon"></i>
<span slot="title">{{ item.name }}</span>
</el-menu-item>
</template>
</el-menu>
</div>
</template> <script>
export default {
data() {
return {
isCollapse: false, // 是否折叠菜单
menuList: [
{
name: '首页',
path: '/',
icon: 'el-icon-s-home'
},
{
name: '菜单1',
path: '/menu1',
icon: 'el-icon-menu',
children: [
{
name: '菜单1-1',
path: '/menu1-1'
},
{
name: '菜单1-2',
path: '/menu1-2'
}
]
},
{
name: '菜单2',
path: '/menu2',
icon: 'el-icon-menu',
children: [
{
name: '菜单2-1',
path: '/menu2-1'
},
{
name: '菜单2-2',
path: '/menu2-2',
children: [
{
name: '菜单2-2-1',
path: '/menu2-2-1'
},
{
name: '菜单2-2-2',
path: '/menu2-2-2'
}
]
}
]
}
]
}
}
}
</script>

复制

在这个例子中,我们使用了el-menu和el-submenu组件来实现无限级菜单。menuList数组中存储了菜单的数据,包括菜单的名称、路径和图标等信息。如果一个菜单有子菜单,我们使用el-submenu组件来展示它的子菜单,否则使用el-menu-item组件来展示它本身。我们还使用了Vue Router来实现路由跳转。

在实际项目中,我们可以将菜单数据存储在后端数据库中,通过API来获取菜单数据,并动态生成菜单。这样可以更加灵活地管理菜单,同时也方便后续的维护和扩展。

Vue2和ElementUI编写的无限级菜单路由的更多相关文章

  1. Vue2.0 + ElementUI 手写权限管理系统后台模板(一)——简述

    挤一下: 一开始以为没有多少人用就没建群,但是加我的人太多了,好多问题都是重复的,所以建个群大家互相沟通交流方便点,但是建的有点晚,错过了好多人所以群里人有点少,QQ群: 157216616 小提示 ...

  2. Vue2.0 + Element-UI + WebAPI实践:简易个人记账系统

    最近正在学习Vue2.0相关知识,正好近期饿了么桌面端组件Element-UI发布,便动手做了一款简易个人记账系统,以达到实践及巩固目的. 1.开发环境 Win10 + VS2015 + Sqlser ...

  3. Vue2.0+ElementUI+PageHelper实现的表格分页

    Vue2.0+ElementUI+PageHelper实现的表格分页 前言 最近做了一些前端的项目,要对表格进行一些分页显示.表格分页的方法有很多,从宏观上来说分为物理分页和逻辑分页,由于逻辑分页(即 ...

  4. jQuery仿京东无限级菜单HoverTree

    官方网址:http://keleyi.com/jq/hovertree/ 效果图: 看了上面效果图,你或许已经明白为什么是仿京东菜单.如果还不明白,请访问http://list.jd.com/list ...

  5. 【vue】iView-admin2.0动态菜单路由

    vue项目实现动态路由有俩种方式 一.前端在routers中写好--所有--路由表 <前端控制路由>,登录时根据用户的角色权限来动态的显示菜单路由 二.前端通过调用接口请求拿到当前用户-- ...

  6. Elementui 导航组件和Vuejs路由结合

    Elementui 导航组件和Vuejs路由结合, 达到点击导航切换路由,根据路由定位导航 一下是nav.vue代码,导航数据以json格式配置 <template> <el-men ...

  7. golang实现无限级菜单(beego框架下)

    原文地址  http://www.niu12.com/article/37 golang实现无限级菜单(beego框架下) 数据表如下 -- ---------------------------- ...

  8. 【vue】iView-admin2.0动态菜单路由【版2】

    依照iView-admin2.0动态菜单路由[版1] 归纳几个节点动态路由获取方式2 ——> easymock假数据 ——> 数据转组件处理.addRoutes ——> localS ...

  9. Go语言实现excel导入无限级菜单结构

    目录 需求 实现 测试 简单例子 复杂例子 需求 最近有一个需求,要实现一个无限级结构的树型菜单,差不多长下面这个样子 我们知道无限级实现思路都是用一个parent_id将各种层级串联起来,顶级的pa ...

  10. vue + element-ui 制作下拉菜单(可配置路由、可根据路由高亮list、可刷新自动展开定位路由)

    本篇文章分享一篇关于 vue制作可路由切换组件.可刷新根据路由定位导航(自动展开).可根据路由高亮对应导航选项 一.实现的功能如下: 1.可折叠导航面板 2.点击导航路由不同组件           ...

随机推荐

  1. 月薪40K+的测试老兵,测试开发学习实战心得分享

    1. 前言 大家好,我是Arthur,拥有超过10年以上的银行测试经验,目前在一家互联网创业公司担任测试经理.在我们那个年代,基本上都是不会写代码的做测试工作,而且基本都是纯手工:最近几年,测试开发开 ...

  2. 如何使用 etcd 实现分布式 /etc 目录

    etcd 是一款兼具一致性和高可用性的键值数据库,简单.安全.快速.可信,目前是 Kubernetes 的首要数据存储.我们先来看一段 etcd 官方对于名字的解释. The name "e ...

  3. (C语言)每日代码||2024.1.10||scanf("%6f",&a)

    #include <stdio.h> int main() { float a; scanf("%.3f", &a);//输入1234 printf(" ...

  4. .NET 云原生架构师训练营(模块二 基础巩固 EF Core 基础与配置)--学习笔记

    2.4.3 EF Core -- 基础与配置 连接字符串 异步编程 日志 DbContext池 类和配置表 属性和列配置 并发token 索引 Entity Framework Core:https: ...

  5. 浅谈一下对于 js 中的 this 的理解

    浅谈一下对于 js 中的 this 的理解 对于 this 值的定义: 简单来说 this 是一个对象,这个对象具体的值是什么,取决于运行时的环境,即代码执行时的环境. MDN: 当前执行上下文( g ...

  6. BZOJ3156 防御准备 题解

    原题 令 \(S_{i} =\sum\limits_{j=1}^{i}j\) , \(f_{i}\) 为处理到第 \(i\) 个位置放置守卫塔的最小花费. 观察题意,容易得到在\((1 \le j \ ...

  7. 罗克韦尔 FT View使用占位符(全局对象参数)来指定弹出窗口的显示名称

    罗克韦尔 FT View使用占位符(全局对象参数)来指定弹出窗口的显示名称 标签占位符 标签占位符能实现将单个图形显示用于多个相似的操作,从而节省开发和维护应用程序的时间. 例如,要为使用同一台机器将 ...

  8. python常用的搜索字符内容函数详解:re.findall/findfiter

    区别findall返回listfinditer返回一个MatchObject类型的iterator详细举例介绍1.findall在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹 ...

  9. Vue DevTools 安装和浏览器跳转到编辑器指定组件

    Vue DevTools install and Open component in editor 1.在谷歌浏览器安装vue 插件 1.1下载vue插件 链接:https://pan.baidu.c ...

  10. win32-创建一个屏幕准星(UpdateLayeredWindow)

    // Test_1.cpp : Defines the entry point for the application. // #include "framework.h" #in ...