<el-tree
:props="props"
node-key="id"
:default-expanded-keys="['-1']"
:default-checked-keys="['0', '1']"
show-checkbox
lazy
:load="loadNode"
/>
props: {
label: 'name',
children: 'zones',
isLeaf: val => !val.zones
},
loadNode(node, resolve) {
if (node.level === 0) {
return resolve([{ id: "-1", name: "选择人员", zones: [] }]);
}
if (node.level > 1) return resolve([]);
setTimeout(() => {
const data = ["人员1", "人员2", "人员3", "人员4"];
resolve(data.map((v, i) => ({ id: i.toString(), name: v })));
}, 500);
}
页面中的效果如下