最近看了 Vue.js 的递归组件,实现了一个最基本的树形菜单。

项目结构:

main.js 作为入口,很简单:

import Vue from 'vue'

Vue.config.debug = true

import main from './components/main.vue'

new Vue({

el: '#app',

render: h => h(main)

})

它引入了一个组件 main.vue:

var myData = [

{

'id': '1',

'menuName': '基础管理',

'menuCode': '10',

'children': [

{

'menuName': '用户管理',

'menuCode': '11'

},

{

'menuName': '角色管理',

'menuCode': '12',

'children': [

{

'menuName': '管理员',

'menuCode': '121'

},

{

'menuName': 'CEO',

'menuCode': '122'

},

{

'menuName': 'CFO',

'menuCode': '123'

},

{

'menuName': 'COO',

'menuCode': '124'

},

{

'menuName': '普通人',

'menuCode': '124'

}

]

},

{

'menuName': '权限管理',

'menuCode': '13'

}

]

},

{

'id': '2',

'menuName': '商品管理',

'menuCode': ''

},

{

'id': '3',

'menuName': '订单管理',

'menuCode': '30',

'children': [

{

'menuName': '订单列表',

'menuCode': '31'

},

{

'menuName': '退货列表',

'menuCode': '32',

'children': []

}

]

},

{

'id': '4',

'menuName': '商家管理',

'menuCode': '',

'children': []

}

];

import myTree from './common/treeMenu.vue'

export default {

components: {

myTree

},

data() {

return {

theModel: myData

}

}

}

该文件引入了树形组件 treeMenu.vue:

{{ model.menuName }}

export default {

name: 'treeMenu',

props: ['model'],

data() {

return {

open: false,

isFolder: true

}

},

computed: {

isFolder: function() {

return this.model.children && this.model.children.length

}

},

methods: {

toggle: function() {

if (this.isFolder) {

this.open = !this.open

}

}

}

}

ul {

list-style: none;

}

i.icon {

display: inline-block;

width: 15px;

height: 15px;

background-repeat: no-repeat;

vertical-align: middle;

}

.icon.folder {

background-image: url(/src/assets/folder.png);

}

.icon.folder-open {

background-image: url(/src/assets/folder-open.png);

}

.icon.file-text {

background-image: url(/src/assets/file-text.png);

}

.tree-menu li {

line-height: 1.5;

}

就这么简单。这篇文章还真没什么可写的,权当记录吧。

截图效果如下:

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!

vue树形权限菜单_Vue.js 递归组件实现树形菜单(实例分享)相关推荐

  1. vue树形权限菜单_Vue.js 递归组件实现树形菜单

    最近看了 Vue.js 的递归组件,实现了一个最基本的树形菜单. main.js 作为入口: import Vue from 'vue' import main from './components/ ...

  2. vue 递归组件多级_Vue递归组件实现树形结构菜单

    Tree 组件是递归类组件的典型代表,它常用于文件夹.组织架构.生物分类.国家地区等等,世间万物的大多数结构都是树形结构.使用树控件可以完整展现其中的层级关系,并具有展开收起选择等交互功能. 如图所示 ...

  3. vue的递归组件以及三级菜单的制作

    js里面有递归算法,同时,我们也可以利用props来实现vue模板的递归调用,但是前提是组件拥有 name 属性 父组件:slotDemo.vue: <template><div&g ...

  4. react重新渲染菜单_React实现递归组件

    前言 今天来实现一个 React 的递归组件.具体的效果图如下: 图片说明 假设后端返回的数据如下: [{ id: 1, parent_id: 0, name: '广东省', children: [{ ...

  5. angular移除事件绑定事件绑定_Vue.js子组件利用事件向父组件传输数据,以及sync修饰符和双向绑定...

    在Vue.js的组件中,prop是"单向绑定"的,数据只能从父组件传输到子组件.Vue文档中的说了这样做的原因: 所有的 prop 都使得其父子 prop 之间形成了一个单向下行绑 ...

  6. Vue动态查询条件-Vue动态查询规则-Vue多条件分组组合查询-递归组件(一):前端

    先看最终的效果: 最近项目上有一个需求,VUE前端要实现动态查询条件组件,后端就能够动态组装SQL. 要模仿人家Azure Devops的查询功能,我丢,Azure Devops是人家微软开发的个东西 ...

  7. vue计算多列和_vue.js的简单自动求和计算实例

    一.导入vue.js 二.前端页面 我用了一个表格,话不多说直接上代码 数学 物理 英语 总分 {{sum}} 平均分 {{average}} 二. js代码 1.创建一个 vue容器 在el中写你的 ...

  8. vue 树形控件可编辑_vue.js element-ui组件改iview 第一期 tree树形控件

    此为第一期修改,后期也适配了其他组件,更多查看我得文章 element-ui组件的tree树形控件修改源码改为iview组件 实现原理 修改了element-ui源码,把源码里面的tree模块提取出来 ...

  9. vue就地复用不是更快吗_Vue.js从零开始——组件(1)

    其实本来应该把这个章节也放在入门里面的,但是想想这个部分是 Vue 的核心功能之一,所以就独立出来吧,专门进行介绍也挺好的. 这个章节主要是对 Vue 的组件(Component)有个基础的了解先,也 ...

最新文章

  1. 在windows上使用virt-manager
  2. WCF绑定细节(2)——绑定,绑定元素
  3. JVM调优总结(四)-垃圾回收面临的问题
  4. 数据结构:二叉查找树(C语言实现)
  5. loadrunner / socket level data and wininet level data
  6. JavaScript 错误 - Throw、Try 和 Catch
  7. 2021年软考DHCP技术点+配置
  8. c#学习5,处理异常
  9. android小应用帮美女更衣系列二(附源码)
  10. Robo 3T(Studio 3T)最新版安装教程
  11. plpgsql 编译执行
  12. 《Context and Attribute Grounded Dense Captioning》笔记
  13. 2022最新可用网页百度分享按钮安装教程【网站添加百度分享按钮代码】
  14. JavaScript---网络编程(12)--DHTML技术演示(5)-form表单验证技术(正则)
  15. 简单的flask入门,自己来写网页
  16. java中有测试方法主方法不运行_java – 我的Eclipse无法再运行(或调试)我的JUnit测试...
  17. Word题注无法自动更新(删除其他题注后)
  18. python按字典顺序输出单词频率_用python编写一段程序,输入若干单词,按照单词长短进行排序,并统计所有单词中每个字母(a-z)出现的次数...
  19. 每天学点统计学——频率和累计频数
  20. 中国超级计算行业发展动态及投资战略研究报告(2022-2027年版)

热门文章

  1. Spring+MyBatis企业应用实战 - 笔记- Java EE应用
  2. 踢掉 Docker 后,Kubernetes 还能欢快地跑 GPU?
  3. 和无用代码说再见!阿里文娱无损代码覆盖率统计方案
  4. @程序员,如何在编程面试中脱颖而出?
  5. GitLab 公开拒收中国员工,你怎么看?!
  6. 从 Android 6.0 源码的角度剖析 Binder 工作原理 | CSDN 博文精选
  7. 程序员踩坑之旅:将 75000 行 iOS 原生代码迁移到 Flutter!
  8. 豆瓣评分 9.7,等了好久的《操作系统导论》Operating Systems 终于来了
  9. 面对 996,程序员如何利用“碎片时间”涨薪?
  10. Google 纪念万维网 30 年:没有 HTTP 协议就没有互联网