bee-tree/docs/api.md

99 lines
5.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 树形控件 Tree
## 何时使用
文件夹、组织架构、生物分类、国家地区等等,世间万物的大多数结构都是树形结构。使用树控件可以完整展现其中的层级关系,并具有展开收起选择等交互功能。
## 如何使用
```
import { Tree } from 'tinper-bee';
or
import Tree from 'bee-tree';
import 'bee-tree/build/Tree.css';
```
## 代码演示
## API
### Tree
|参数|说明|类型|默认值|
|:---|:-----|:----|:------|
|multiple|是否允许选择多个树节点|bool|false
|checkable|节点前添加 Checkbox 复选框|bool|false
|defaultExpandAll|默认展开所有树节点|bool|false
|defaultExpandedKeys|默认展开指定的树节点|String[]|[]
|expandedKeys|(受控)展开指定的树节点|String[]|[]
|autoExpandParent|是否自动展开父节点|bool|true
|defaultCheckedKeys|默认选中复选框的树节点|String[]|[]
|checkedKeys|(受控)选中复选框的树节点(注意:父子节点有关联,如果传入父节点 key则子节点自动选中相应当子节点 key 都传入父节点也自动选中。当设置checkable和checkStrictly它是一个有checked和halfChecked属性的对象并且父子节点的选中与否不再关联|String[]/{checked:Array,halfChecked:Array}|[]
|checkStrictly|checkable 状态下节点选择完全受控(父子节点选中状态不再关联)|bool|false
|defaultSelectedKeys|默认选中的树节点|String[]|[]
|selectedKeys|(受控)设置选中的树节点|String[]|-
|cancelUnSelect|选中的节点第二次点击时还是选中,不自动取消选中|bool|false
|showLine|是否显示连接线|bool|false
|openIcon|自定义展开节点图标的名称[参考这里](http://bee.tinper.org/tinper-bee/bee-icon)String[]|-
|closeIcon|自定义关闭节点图标的名称[参考这里](http://bee.tinper.org/tinper-bee/bee-icon)String[]|-
|onExpand|展开/收起节点时触发的回调函数|function(expandedKeys, {expanded: bool, node})|-
|onCheck|点击复选框触发的回调方法|function(checkedKeys, e:{checked: bool, checkedNodes, node, event})|-
|onSelect|点击树节点触发的回调函数|function(selectedKeys, e:{selected: bool, selectedNodes, node, event})|-
|filterTreeNode|按需筛选树节点(高亮),当返回true,相关联的节点会高亮|function(node)|-
|loadData|异步加载数据|function(node)|-
|onRightClick|当用户点击右键触发的回调函数|function({event,node})|-
|draggable|树是否可拖拽IE>8| bool|false
|onDragStart|当树节点刚开始拖拽所触发的放方法|function({event,node})|-
|onDragEnter|当拖拽进入触发的方法|function({event,node,expandedKeys})|-
|onDragOver|当拖拽经过触发的方法|function({event,node})|-
|onDragLeave|当拖拽离开触发的方法|function({event,node})|-
|onDragEnd|当拖拽结束触发的方法|function({event,node})|-
|onDrop|当节点放下触发方法|function({event, node, dragNode, dragNodesKeys})|-
|onDoubleClick|当双击发生触发的方法|function(checkedKeys, e:{node, event})|-
|focusable|是否开启快捷键功能使用Tab 键导航获取焦点↓↑选中下、上一个节点,→←展开或者收起一个节点,enter键为节点双击事件|bool|-
|tabIndexValue|节点获取焦点时自定义tabIndex的值|Number|0
|children|必填TreeNode组件|node|-
|mustExpandable|支持disabled的节点可以自定义展开收起默认disabled的节点不可以展开收起。【tinper-bee@2.1.1 新增】|bool|false
|autoSelectWhenFocus|使用“↑、↓”快捷键切换焦点时,是否自动选中树节点|bool|false
|expandWhenDoubleClick|双击树节点的时候,是否触发收起/展开动作|bool|false
|treeData|treeNodes 数据,如果设置则不需要手动构造 TreeNode 节点key 在整个树范围内唯一)|array\<{key, title, children, [disabled, selectable]}>|-
|lazyLoad|是否使用懒加载(适用于大数据场景),[如何使用](http://bee.tinper.org/tinper-bee/bee-tree#%E6%BB%9A%E5%8A%A8%E5%8A%A0%E8%BD%BD%E6%A0%91%E8%8A%82%E7%82%B9)|bool|false
|debounceDuration|懒加载时可以传入一个防抖的时长|number|150
|renderTitle|使用 treeData 渲染树时使用,可通过此函数自定义树节点内容|Function(item)|-
|renderTreeNodes|使用 treeData 渲染树节点时,可使用该函数自定义节点显示内容(非必须)|Function(data)|-
|getScrollContainer|用于滚动加载场景,自定义滚动事件监听的容器|Function(data)|-
### TreeNode
|参数|说明|类型|默认值|
|:---|:-----|:----|:------|
|disabled|节点是否不可用|bool|false
|disableCheckbox|节点的checkbox是否不可用|bool|false
|selectable|设置节点是否可被选中|bool|true
|title|名称标题|String/element |--
|key|节点key,和(default)ExpandedKeys / (default)CheckedKeys / (default)SelectedKeys一起用必须是唯一的|String|-
|isLeaf|是否是叶子节点|bool|false
|titleClass|名称类名|String|-
|titleStyle|名称样式|Object|-
|switcherClass|switcher类名|String|-
|switcherStyle|switcher样式|Object|-
|children|TreeNode组件/无|node|-
### 快捷键API
| 快捷键 | 类型 |快捷键说明 |
| --- | :---: | --- |
| focusable | bool | 是否开启快捷键 |
| tab | - | tab 进入焦点,且选中第一行。|
| ↑、↓ | - | ↑(上箭)、↓(下箭) 选中上一行、选中下一行。 |
| ←、→ | - | ←(左箭)、→(右箭) 收起、展开。 |
## 注意事项
暂无
## 更新日志