个人博客 snows_ls BLOGhttp://36.151.145.67:30000/一、单选1、问题vue-treeselect 单选的时候只选择最后一层绑定的值只绑定最后一层2、方法1、只需要加上 :disable-branch-nodestrue 就行官方解释为禁用节点设置disableBranchNodes: true为使分支节点不可检查并将其仅视为可折叠文件夹2、代码如下// template XTreeselect v-ifform.type 2 v-modelform.id :optionsversionList :normalizertenantIdnormalizer :disable-branch-nodestrue inputhandleVersionChange noOptionsText暂无数据 placeholder点击选择 /XTreeselectjs// 整理后端数据给组件使用 tenantIdnormalizer(node) { if (node.child !node.child.length) { delete node.children; } return { id: node.id || 0, label: node.name, children: node.child, }; }, // 改变的因需求而定 handleVersionChange(val) { if (this.form.type 1) { this.form.version this.versionList.find( (item) item.value val ).label; } else { let arr this.flattenTree(this.versionList, child); let row arr.find((item) item.id val); if (row) { this.form.version row.name; } } },二、多选1、问题vue-treeselect 多选的时候只选择最后一层绑定的值只绑定最后一层2、方法1、只需要加上 value-consists-ofLEAF_PRIORITY 就行官方解释为 防止价值组合对于非固定和多选模式如果选中了分支节点及其所有后代则vue-treeselect会将它们组合到值数组中的单个项目中如以下示例所示。通过使用valueConsistsOf道具您可以更改该行为。该道具有四个选项ALL- 选中的所有节点都将包含在value数组中BRANCH_PRIORITY默认-如果选中了分支节点则其所有后代将被排除在value数组之外LEAF_PRIORITY- 如果选中了分支节点则此节点本身及其分支后代将从value阵列中排除但其叶后代将包括在内ALL_WITH_INDETERMINATE-选中的任何节点将包括在value数组中另外还有不确定的节点2、代码图下// template XTreeselect v-modelform.model :multipletrue :optionsmanufacturerModelList value-consists-ofLEAF_PRIORITY :normalizertenantIdnormalizer noOptionsText暂无数据 placeholder点击选择 /XTreeselectjs通单选