Vue2组件tree实现无限级树形菜单


Posted in Javascript onMarch 29, 2017

一直打算偷懒使用个现成的树组件,但是在github上找了一大圈没有找到真正满足应用开发的树组件,所以没办法只能自己写了一个,开源出来希望可以帮助到需要的人,同时如果大家觉得好用,我可以顺带骗骗★(希望喜欢的朋友对我体力的肯定可以点下★ ),由于我也算刚接触vue,所以难免有所考虑不周的地方,希望大家在issue里面指正。组件重点是父子组件数据的共享和状态保持,我是利用了下vuex的思路,采用一个控制仓库完成。

github 地址 vue-tree

How to run demo

npm install
npm run dev

效果图

Vue2组件tree实现无限级树形菜单

示例

<template>
 <div style="width:300px;">
 <tree ref ='tree' :treeData="treeData" :options="options" @node-click='handleNode'/>
 </div>
</template>
<script>
import Tree from '../components/tree/tree.vue'
export default {
 name: 'test',
 data () {
 return {
  options: {
  showCheckbox: true,
  search: {
   useInitial: true,
   useEnglish: false,
   customFilter: null
  }
  },
  treeData: [
  {
   id: 1,
   label: '一级节点',
   open: true,
   checked: false,
   parentId: null,
   visible: true,
   searched: false,
   children: [
   {
    id: 2,
    label: '二级节点-1',
    checked: false,
    parentId: 1,
    searched: false,
    visible: true
   },
   {
    label: '二级节点-2',
    open: true,
    checked: false,
    id: 3,
    parentId: 1,
    visible: true,
    searched: false,
    children: [
    {
     id: 4,
     parentId: 3,
     label: '三级节点-1',
     visible: true,
     searched: false,
     checked: false
    },
    {
     id: 5,
     label: '三级节点-2',
     parentId: 3,
     searched: false,
     visible: true,
     checked: false
    }
    ]
   },
   {
    label: '二级节点-3',
    open: true,
    checked: false,
    id: 6,
    parentId: 1,
    visible: true,
    searched: false,
    children: [
    {
     id: 7,
     parentId: 6,
     label: '三级节点-4',
     checked: false,
     searched: false,
     visible: true
    },
    {
     id: 8,
     label: '三级节点-5',
     parentId: 6,
     checked: false,
     searched: false,
     visible: true
    }
    ]
   }
   ]
  }
  ]
 }
 },
 components: {Tree}
}
</script>

属性

 Vue2组件tree实现无限级树形菜单

options: {
  showCheckbox: true, //是否支持多选
  search: {
   useInitial: true, //是否支持首字母搜索
   useEnglish: false, //是否是英文搜索
   customFilter: null // 自定义节点过滤函数
  }

 /* 节点元素 */
 {
  id: 1, //节点标志
  label: '一级节点', //节点名称
  open: true, // 是否打开节点
  checked: false, //是否被选中
  parentId: null, //父级节点Id
  visible: true, //是否可见
  searched: false, //是否是搜索值
  children: [] //子节点
 }

方法

Vue2组件tree实现无限级树形菜单

事件

Vue2组件tree实现无限级树形菜单

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
在jQuery ajax中按钮button和submit的区别分析
Oct 07 Javascript
js遍历td tr等html元素
Dec 13 Javascript
js实现的下拉框二级联动效果
Apr 30 Javascript
微信小程序之picker日期和时间选择器
Feb 09 Javascript
JS实现浏览上传文件的代码
Aug 23 Javascript
JavaScript实现微信号随机切换代码
Mar 09 Javascript
JavaScript引用类型之基本包装类型实例分析【Boolean、Number和String】
Aug 09 Javascript
checkbox在vue中的用法小结
Nov 13 Javascript
js全屏事件fullscreenchange 实现全屏、退出全屏操作
Sep 17 Javascript
JavaScript代码异常监控实现过程详解
Feb 17 Javascript
基于vue实现简易打地鼠游戏
Aug 21 Javascript
浅谈react路由传参的几种方式
Mar 23 Javascript
整理关于Bootstrap列表组的慕课笔记
Mar 29 #Javascript
Vue.js 插件开发详解
Mar 29 #Javascript
整理关于Bootstrap过渡动画的慕课笔记
Mar 29 #Javascript
整理关于Bootstrap模态弹出框的慕课笔记
Mar 29 #Javascript
Angular2平滑升级到Angular4的步骤详解
Mar 29 #Javascript
jQuery插件之validation插件
Mar 29 #jQuery
Vue.js实现移动端短信验证码功能
Mar 29 #Javascript
You might like
php从csv文件读取数据并输出到网页的方法
2015/03/14 PHP
php计算年龄精准到年月日
2015/11/17 PHP
thinkPHP利用ajax异步上传图片并显示、删除的示例
2018/09/26 PHP
不错的JS中变量相关的细节分析
2007/08/13 Javascript
javascript如何创建表格(javascript绘制表格的二种方法)
2013/12/10 Javascript
javascript中普通函数的使用介绍
2013/12/19 Javascript
javascript日期格式化示例分享
2014/03/05 Javascript
Javascript 数组排序详解
2014/10/22 Javascript
jQuery插件ajaxFileUpload使用实例解析
2016/10/19 Javascript
Bootstrap轮播图的使用和理解4
2016/12/14 Javascript
微信小程序实战之登录页面制作(5)
2020/03/30 Javascript
详解mpvue开发小程序小总结
2018/07/25 Javascript
vue自定义js图片碎片轮播图切换效果的实现代码
2019/04/28 Javascript
优雅的使用javascript递归画一棵结构树示例代码
2019/09/22 Javascript
原生JavaScript实现轮播图
2021/01/10 Javascript
Python的高级Git库 Gittle
2014/09/22 Python
python简单程序读取串口信息的方法
2015/03/13 Python
go语言计算两个时间的时间差方法
2015/03/13 Python
Python基础学习之常见的内建函数整理
2017/09/06 Python
Python实现判断字符串中包含某个字符的判断函数示例
2018/01/08 Python
Python实现PS图像调整颜色梯度效果示例
2018/01/25 Python
详解python中__name__的意义以及作用
2019/08/07 Python
python破解bilibili滑动验证码登录功能
2019/09/11 Python
Python selenium 自动化脚本打包成一个exe文件(推荐)
2020/01/14 Python
如何使用Python发送HTML格式的邮件
2020/02/11 Python
Python实现一个简单的毕业生信息管理系统的示例代码
2020/06/08 Python
微信html5页面调用第三方位置导航的示例
2018/03/14 HTML / CSS
拖鞋店创业计划书
2014/01/15 职场文书
运动会演讲稿300字
2014/08/25 职场文书
中国梦演讲稿开场白
2014/08/28 职场文书
财务工作疏忽检讨书
2014/09/11 职场文书
2014年学校德育工作总结
2014/12/05 职场文书
2015年环卫工作总结
2015/04/28 职场文书
2015年小学教导处工作总结
2015/05/26 职场文书
婚礼父母致辞
2015/07/28 职场文书
爱心捐款倡议书:点燃希望,传递温暖
2019/11/04 职场文书