• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

eleTree: 基于虚拟dom重写eleTree插件 移除layui和jquery,完全基于snabbdom,渲染性 ...

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称:

eleTree

开源软件地址:

https://gitee.com/hsiangleev/ele-tree

开源软件介绍:


eleTree2.0在线文档

说明

  • 基于虚拟dom重写eleTree插件
  • 移除layui和jquery,完全基于snabbdom,渲染性能大大优化
  • es6加webpack打包,支持import导入,layui导入和CDN直接引入的方式
  • 功能包括自定义图标,单选,多选,右键菜单,复制粘贴,懒加载,拖拽,搜索等

本地开发测试

git clone https://github.com/hsiangleev/eleTree.gitcd eleTreenpm install# 浏览器访问 http://localhost:3000npm run start# 生成npm run build# vuepress文档在线查看(浏览器访问http://localhost:3001)npm run docs:start

安装

npm install eletree -D

CDN引入

<!-- js文件 --><script src="//unpkg.com/eletree/dist/eleTree.js"></script><!-- 加载字体文件样式 --><link rel="stylesheet" href="//unpkg.com/eletree/dist/css/icon.css"></script><!-- 使用图片地址 --><!-- imgUrl: "//unpkg.com/eletree/dist/images/" -->

快速开始

<div class="eletree"></div>

var el = eleTree({    el: '.eletree',    url: '/eleTree/json/1.json',    highlightCurrent: true,    showCheckbox: true})el.getChecked()el.on("checkbox", function(data) {    console.log(data)})

api文档

options属性

基础属性

参数说明类型可选值默认值
eldom选择器string
data静态数据array
emptText当数据为空时显示的内容string暂无数据
highlightCurrent是否高亮当前选中节点booleanfalse
defaultExpandAll是否默认展开所有节点booleanfalse
autoExpandParent展开子节点的时候是否自动展开父节点booleanfalse
expandOnClickNode是否在点击文本的时候展开或者收缩节点,如果为 false,则只有点箭头图标的时候才会展开或者收缩节点booleantrue
checkOnClickNode复选框是否在点击文本的时候选中节点booleanfalse
radioOnClickNode单选框是否在点击文本的时候选中节点booleanfalse
defaultExpandedKeys默认展开的节点的 key 的数组array
showCheckbox是否显示checkboxbooleanfalse
checkStrictly在显示复选框的情况下,是否严格的遵循父子不互相关联的做法booleanfalse
isDefaultChangePstatus在显示复选框并且父子关联的情况下,初始数据是否只是子节点影响父节点,默认false,即父子关联booleanfalse
defaultCheckedKeys默认勾选的节点的 key 的数组array
accordion是否每次只打开一个同级树节点展开(手风琴效果)booleanfalse
indent相邻级节点间的水平缩进,单位为像素number16
showLine是否显示虚线booleantrue
imgUrl图片所在的文件夹路径string./images/
icon使用自定义图标或图片objectfold,leaf,checkFull,checkHalf,checkNone,dropdownOff,dropdownOn,loading,radioCheck,radioCheckNone每个属性默认值均为空字符串
done树渲染完成之后的回调,参数为data数据function
lazy开启懒加载booleanfalse
rightMenuList开启右键菜单array"copy", "paste", "paste_before", "paste_after", "cut_paste", "edit", "remove", "add_child", "add_before", "add_after"[]
showRadio是否显示radiobooleanfalse
radioType单选范围(是同一级还是整体只能选择一个)stringlevel/alllevel
defaultRadioCheckedKeysradio默认选中项array
defaultPid当使用pid格式的数据时,第一层数据的默认值string/number''
draggable是否开启拖拽节点功能booleanfalse
customText节点文本自定义函数;function

异步属性

参数说明类型可选值默认值
url异步接口地址string
method接口http请求类型stringget,postget
where接口的其它参数object
headers接口的请求头object
responsedom选择器string
requestdom选择器string

方法

方法名说明参数
on事件回调(type, callback)1.事件名,2.触发事件时的回调函数;
getChecked获取复选框选中的节点信息(leafOnly, includeHalfChecked)1.是否只选中叶子节点,默认false,2.是否包括半选节点,默认false
setChecked设置复选框选中的节点(checkArr, isUnCheckAll)1.设置选中项数组,2.是否先清空原有的选中项,默认true
unChecked取消复选框选中的节点(unCheckArr)1.取消选中的节点数组;不传参数则默认清空所有选中项;
setAllCheckedcheckbox选中所有节点,除了禁用的节点
reverseCheckedcheckbox反选所有节点,除了禁用的节点
getRadioChecked获取单选框选中的节点信息
setRadioChecked设置单选框选中的节点(checkArr, isUnCheckAll)1.设置选中项数组,2.是否先清空原有的选中项,默认true
unRadioChecked取消单选框选中的节点(unCheckArr)1.取消选中的节点数组;不传参数则默认清空所有选中项
expandAll展开所有节点
unExpandAll合并所有节点
append添加子节点(有两种格式)A. (id, array/object)1.查找需要添加的节点id,2.添加的子节点数据数组;id传null或空字符串则会添加到根节点B. (array/object)只传一个array/object参数则代表传入的为pid格式的数据,即在节点pid下添加子节点
updateKeySelf更新当前节点数据或移动某些节点(有两种格式)A. (id, object)1.查找需要修改的节点id,2.需要修改的数据B. (array/object)只传一个array/object参数则代表传入的为pid格式的数据,即修改id的数据,如果pid改变,则代表移动节点
remove删除节点数据(removeArr)1.需要删除的节点id数组(可以移除多个节点)
edit编辑节点(id, nodeType)1.需要编辑的节点id, 2. 当前编辑的节点类型,对应触发的回调事件名称,可选值(edit/add_child/add_before/add_after)
insert在某个节点前后插入数据(id, array/object, type)1.查找需要添加的节点id,2.需要添加节点数据数组,3.类型,在当前节点前插入还是节点后插入,可选参数('before','after'),默认节点前
reload重新渲染树节点(options)1.传入object,参数初始参数一致
search搜索树节点(value, callback)1.需要搜索的文本信息,2. 传入的搜索条件,函数返回值为true则显示该节点;
getAllNodeData获取所有节点数据('c'/'p') 传入字符串'c'则返回的数据结构为父子结构,传入字符串'p'则返回pid格式的数据,默认为'c'
copy复制节点(id) 1.需要复制的节点id
cutPaste剪贴节点(id) 1.需要剪贴的节点id
paste粘贴节点(id, nodeType) 1.需要粘贴到的节点id,2.粘贴到该节点的位置,可选参数('before','after','children'),默认children
getClipboardData获取剪贴板数据移动或复制或剪贴节点都会把该节点复制到剪贴板,如果剪贴板没有数据,则返回null

事件

方法名说明回调参数
checkboxcheckbox选择(type, data)1.事件名,2.当前节点数据
radioradio选择(type, data)1.事件名,2.当前节点数据
click节点点击(type, data)1.事件名,2.当前节点数据
copy节点复制(type, data, load, stop)1.事件名,2.当前节点数据, 3. 执行该操作, 4. 取消执行该操作
paste粘贴到子节点与copy一致
paste_before粘贴到节点之前与copy一致
paste_after粘贴到节点之后与copy一致
cut_paste剪贴节点与copy一致
edit编辑节点与copy一致
remove删除节点与copy一致
add_child添加子节点与copy一致
add_before添加到节点前与copy一致
add_after添加到节点后与copy一致
custom_自定义事件与copy一致
drag拖拽事件(type, data, load, stop, endData, range)1.事件名,2.初始移动的节点数据, 3. 执行该操作, 4. 取消执行该操作, 5. 移动到某节点的数据, 6. 移动到节点范围(outer:移动到根节点/inner:移动到子节点)

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap