当选中节点时将其展示到右边的框里,两边实现同步,
有个check(选择复选框)事件,获取选中的数据this.$refs.tree.getCheckedNodes()循环展示就行了
<template v-for="(item,index) in items">
<span :key="index">
{{item}}
</span>
</template>
<el-tree
ref="tree"
@check="handleCheck">
</el-tree>
methods : {
handleCheck(node){
let checkNode = this.$refs.tree.getCheckedNodes()
this.items = checkNode.map(v => v.label)
}
}
在递归树形结构数据时用一个key来区分是部门还是人员,例如:isLeaf =true 的是人员,isLeaf=false 是部门,
树形图有个check-change事件check-change
<el-tree
node-key="id"
show-checkbox
@check-change="myfun">
</el-tree>
myfun(data,check) {
if(check == true && data.isLeaf == true) {
arr.push(data)
} else {
...
}
2 回答1.5k 阅读✓ 已解决
2 回答877 阅读✓ 已解决
1 回答1.1k 阅读✓ 已解决
1 回答892 阅读✓ 已解决
2 回答780 阅读
1 回答768 阅读✓ 已解决
2 回答1.1k 阅读
右侧要求也是一个树结构,还是只展示选中的数据?
只展示选中的数据,不要求树结构,所以可以使用以下方法来获取所有选中的node: