ElementUI浅尝辄止21:Tree 树形控件

树形组件:用清晰的层级结构展示信息,可展开或折叠。

树组件使用挺频繁的,常见于侧边栏树形目录、树形下拉选项按钮或搜索查询树形信息选项

1.如何使用?

基础的树形结构展示



2.可选择

适用于需要选择层级时使用。

//可以动态加载节点数据。



3.懒加载自定义叶子节点

/*由于在点击节点时才进行该层数据的获取,默认情况下 Tree 无法预知某个节点是否为叶子节点,所以会为每个节点添加一个下拉按钮,如果节点没有下层数据,则点击后下拉按钮会消失。同时,你也可以提前告知 Tree 某个节点是否为叶子节点,从而避免在叶子节点前渲染下拉按钮。*/





4.默认展开和默认选中

可将 Tree 的某些节点设置为默认展开或默认选中

/*分别通过default-expanded-keys和default-checked-keys设置默认展开和默认选中的节点。需要注意的是,此时必须设置node-key,其值为节点数据中的一个字段名,该字段在整棵树中是唯一的。*/




5.禁用状态

可将 Tree 的某些节点设置为禁用状态

//通过disabled设置禁用状态。




6.树节点的选择

/*如何获取和设置选中节点。获取和设置各有两种方式:通过 node 或通过 key。如果需要通过 key 来获取或设置,则必须设置node-key。*/




通过 node 获取 通过 key 获取 通过 node 设置 通过 key 设置 清空

7.自定义节点内容

节点的内容支持自定义,可以在节点区添加按钮或图标等内容

/*可以通过两种方法进行树节点内容的自定义:render-content和 scoped slot。使用render-content指定渲染函数,该函数返回需要的节点区内容即可。渲染函数的用法请参考 Vue 文档。使用 scoped slot 会传入两个参数node和data,分别表示当前节点的 Node 对象和当前节点的数据。注意:由于 jsfiddle 不支持 JSX 语法,所以render-content示例在 jsfiddle 中无法运行。但是在实际的项目中,只要正确地配置了相关依赖,就可以正常运行。*/

使用 render-content

使用 scoped slot

{{ node.label }} Append Delete

8.节点过滤

通过关键字过滤树节点

/*在需要对节点进行过滤时,调用 Tree 实例的filter方法,参数为关键字。需要注意的是,此时需要设置filter-node-method,值为过滤函数。*/







9.手风琴模式

对于同一级的节点,每次只能展开一个




 10.可拖拽节点

通过 draggable 属性可让节点变为可拖拽。




上述内容即为Tree树组件的详细使用方法,若想深入浅出可以前往Tree组件 。

你可能感兴趣的:(element-ui,elementui,前端)