需求是单选,复选框做了单选,点击节点也能选中,不过选中就变成了多选,不受 multiple: false
,的控制了。
解决方法:
就是在选择节点的时候,也做成单选:
<el-tree-select
v-if="isOrg"
ref="treeSelect"
v-model="editOrg.pid"
:select-params="selectParams"
:tree-params="treeParams"
:tree-render-fun="_renderFun"
:default-checked-keys="dataChecked"
@check="_checkClickFun"
@node-click="_checkClickFun"
/>
</el-form-item>
*关键点在单选的时候清空所有组织树,只保留当前选中的节点:
@node-click="_checkClickFun"
和 @check="_checkClickFun"调用同样的方法
// 勾选树组织
_checkClickFun(data, node, vm) {
setTimeout(() => {
this.editOrg.pid.splice(0)
this.editOrg.pid.push(data.id)
}, 100)
}