当前位置: 代码网 > it编程>前端脚本>Vue.js > elementUI Tree 树形控件单选实现示例

elementUI Tree 树形控件单选实现示例

2024年07月02日 Vue.js 我要评论
在element ui中,树形控件(el-tree)本身不支持单选功能。但是,你可以通过监听节点点击事件并手动更新选中状态来实现单选树。以下是一个简单的例子,展示了如何实现单选功能:展示效果代码实现h

在element ui中,树形控件(el-tree)本身不支持单选功能。但是,你可以通过监听节点点击事件并手动更新选中状态来实现单选树。

以下是一个简单的例子,展示了如何实现单选功能:

展示效果

在这里插入图片描述

代码实现

html相关:

 <el-tree :data="flatarr" check-strictly accordion show-checkbox node-key="id" :props="defaultprops"
            @check="handlenodeclick" ref="tree">
 </el-tree>

js方法:

 handlenodeclick(data, node, self) {
      // 如果已经选中了一个节点,则取消选择
      if (this.currentnodekey?.name && this.$refs.tree) {
        this.$refs.tree.setcheckedkeys([]);
         // 更新当前选中节点的 key
        this.$refs.tree.setcheckednodes([data]);
      }

      // 更新当前选中节点的 key
      this.currentnodekey = data;
    },

义了一个currentnodekey来存储当前选中节点的 key。每次点击节点时,我们首先检查是否已经有一个节点被选中,如果是,则通过this.$refs.tree.setcurrentkey(null)取消选中它。然后,我们更新currentnodekey为新选中的节点 key。

请注意,这里的node.key假设你的每个节点数据中都有一个唯一的key属性。你需要根据实际的节点数据结构相应地调整这个属性名。

elementui tree树形控件其他详细数据

参数说明类型可选值默认值
data展示数据array
empty-text内容为空的时候展示的文本string
node-key每个树节点用来作为唯一标识的属性,整棵树应该是唯一的string
props配置选项,具体看下表object
render-after-expand是否在第一次展开某个树节点后才渲染其子节点booleantrue
load加载子树数据的方法,仅当 lazy 属性为true 时生效function(node, resolve)
render-content树节点的内容区的渲染functionfunction(h, { node, data, store }
highlight-current是否高亮当前选中节点,默认值是 false。booleanfalse
default-expand-all是否默认展开所有节点booleanfalse
expand-on-click-node是否在点击节点的时候展开或者收缩节点, 默认值为 true,如果为 false,则只有点箭头图标的时候才会展开或者收缩节点。booleantrue
check-on-click-node是否在点击节点的时候选中节点,默认值为 false,即只有在点击复选框时才会选中节点。booleanfalse
auto-expand-parent展开子节点的时候是否自动展开父节点booleantrue
default-expanded-keys默认展开的节点的 key 的数组array
show-checkbox节点是否可被选择booleanfalse
check-strictly在显示复选框的情况下,是否严格的遵循父子不互相关联的做法,默认为 falsebooleanfalse
default-checked-keys默认勾选的节点的 key 的数组array
current-node-key当前选中的节点string, number
filter-node-method对树节点进行筛选时执行的方法,返回 true 表示这个节点可以显示,返回 false 则表示这个节点会被隐藏function(value, data, node)
accordion是否每次只打开一个同级树节点展开booleanfalse
indent相邻级节点间的水平缩进,单位为像素number16
icon-class自定义树节点的图标string--
lazy是否懒加载子节点,需与 load 方法结合使用booleanfalse
draggable是否开启拖拽节点功能booleanfalse
allow-drag判断节点能否被拖拽function(node)
allow-drop拖拽时判定目标节点能否被放置。type 参数有三种情况:‘prev’、‘inner’ 和 ‘next’,分别表示放置在目标节点前、插入至目标节点和放置在目标节点后function(draggingnode, dropnode, type)

到此这篇关于elementui tree 树形控件单选实现示例的文章就介绍到这了,更多相关element tree 单选内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com