From 48199f9116511d98693e606a6c3ecbb903b656a8 Mon Sep 17 00:00:00 2001 From: fit2cloud-chenyw Date: Mon, 20 Jun 2022 17:08:47 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E6=A0=91=E8=BF=87=E6=BB=A4=E7=BB=84?= =?UTF-8?q?=E4=BB=B6=E6=A8=A1=E7=B3=8A=E6=90=9C=E7=B4=A2=E5=90=8E=E5=85=A8?= =?UTF-8?q?=E9=80=89=E5=8F=AA=E9=80=89=E4=B8=AD=E5=B1=95=E7=A4=BA=E7=9A=84?= =?UTF-8?q?=E8=8A=82=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/ElTreeSelect/index.vue | 23 ++++++++++++++----- 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/frontend/src/components/ElTreeSelect/index.vue b/frontend/src/components/ElTreeSelect/index.vue index df60a28571..c135597b03 100644 --- a/frontend/src/components/ElTreeSelect/index.vue +++ b/frontend/src/components/ElTreeSelect/index.vue @@ -470,15 +470,26 @@ export default { _treeCheckFun(data, node, vm) { this.ids = [] const { propsValue } = this - node.checkedNodes.forEach(item => { + const checkKeys = this.$refs.tree.getCheckedKeys() + checkKeys.forEach((i, n) => { + const node = this.$refs.tree.getNode(i) + if (!node.visible && node.checked) { + this.$refs.tree.setChecked(i, false) + } + }) + + const checkedNodes = this.$refs.tree.getCheckedNodes() + + checkedNodes.forEach(item => { this.ids.push(item[propsValue]) }) /* - 点击复选框,对外抛出 `data, node, vm`
- `data:` 当前点击的节点数据
- `node:` 当前点击的node
- `vm:` 当前组件的vm - */ + 点击复选框,对外抛出 `data, node, vm`
+ `data:` 当前点击的节点数据
+ `node:` 当前点击的node
+ `vm:` 当前组件的vm + */ + node.checkedKeys = checkedNodes.map(node => node.id) this.$emit('check', data, node, vm) this._emitFun() },