el-tree是不支持单选的,可以通过选中事件进行处理,实现单选
主要思路:
1,check 事件 共两个参数,依次为:传递给 data
属性的数组中该节点所对应的对象、树目前的选中状态对象。
2,判断选中的对象大于1时,调用使用setCheckedKeys方法,选中当前节点。
代码如下:
<el-tree lazy
:load="loadNodeTreeMyself"
:props="defaultProps"
:show-checkbox="true" //显示选择框
:check-on-click-node="true" //点击节点的时候选中节点
:check-strictly="true" //在显示复选框的情况下,严格的遵循父子不互相关联的做法
node-key="PHY_ID"
@check="treeCheck" //选中后事件,在此事件中实现单选
ref="treeForm">
</el-tree>
treeCheck:function(node,list){
//node 该节点所对应的对象、list 树目前的选中状态对象
//选中事件在选中后执行,当lis中有两个选中时,使用setCheckedKeys方法,选中一个节点
if (list.checkedKeys.length == 2) {
//单选实现
this.$refs.treeForm.setCheckedKeys([node.PHY_ID]);
}
}
示例: