From 0175cda6150656bc74b34c6f6c71edd1e1fc653c Mon Sep 17 00:00:00 2001 From: zhangzengfei <zhangzengfei@iotlink.com> Date: 星期四, 04 二月 2021 18:22:54 +0800 Subject: [PATCH] treee, 修复tab切换时树的选中状态.添加区域 --- src/components/giantTree/zTree/ztree.vue | 3 ++- src/Pool/TreeData.ts | 2 -- src/components/giantTree/index.vue | 21 ++++++++++++++++++++- 3 files changed, 22 insertions(+), 4 deletions(-) diff --git a/src/Pool/TreeData.ts b/src/Pool/TreeData.ts index e0b9b0d..6984c74 100644 --- a/src/Pool/TreeData.ts +++ b/src/Pool/TreeData.ts @@ -112,7 +112,6 @@ return } let _selected = this.selectedNodes - console.log(this.selectedNodes) function nodeFilter(node: any) { if (node.type === '4' && node.selected) { _selected.push(node.id) @@ -362,7 +361,6 @@ cameraName: this.searchInput }) if (rsp && rsp.success) { - console.log(rsp.data) this.clusterData = rsp.data ? rsp.data : [] if (this.clusterData && this.clusterData.length > 0) { this.sortTreeData(this.clusterData) diff --git a/src/components/giantTree/index.vue b/src/components/giantTree/index.vue index b1aa707..09e5bdc 100644 --- a/src/components/giantTree/index.vue +++ b/src/components/giantTree/index.vue @@ -5,9 +5,11 @@ :show-checkbox="TreeDataPool.multiple" :readonly="TreeDataPool.readonly" :gb28181="gb28181" + @onCreated="handleCreated" @onClick="itemClick" @onCheck="itemCheck" @onDblClick="onDblClick" + @onAddNode="addNode" @onRemoveNode="delNode" @onRenameNode="editNode" @onAddDevice="addCamera" @@ -101,8 +103,25 @@ methods: { handleCreated: function (ztreeObj) { this.ztreeObj = ztreeObj; + // console.log("handleCreated") // onCreated 涓搷浣渮treeObj瀵硅薄灞曞紑绗竴涓妭鐐� // ztreeObj.expandNode(ztreeObj.getNodes()[0], true); + + // 鎽勫儚鏈洪厤缃垏鎹㈡椂, 璁剧疆閫変腑鐘舵�� + if (this.TreeDataPool.selectedNode.id) { + // 鍙栨秷鎵�鏈夊閫夌殑鑺傜偣,浠呬繚鐣欏綋鍓嶅崟閫夌殑鑺傜偣 + this.TreeDataPool.selectedNodes = [this.TreeDataPool.selectedNode.id] + + let node = this.ztreeObj.getNodeByTId(this.TreeDataPool.selectedNode.tId) + + // 澶氶�夋椂, 閫変腑鍗曢�夊崟鍑荤殑鑺傜偣 + if (this.TreeDataPool.multiple) { + this.ztreeObj.checkAllNodes(false); + this.ztreeObj.checkNode(node, true, false, false); + } + + this.ztreeObj.selectNode(node, false, true) + } }, onDblClick(evt, treeId, item) { if (item.type !== "4" || this.app !== "Camera") { @@ -169,7 +188,7 @@ importCameras(node) { this.$emit("import", node); }, - addNode(event, node) { + addNode(node) { this.dialogForm = { text: "", method: "add", diff --git a/src/components/giantTree/zTree/ztree.vue b/src/components/giantTree/zTree/ztree.vue index b8f620f..20e1a14 100644 --- a/src/components/giantTree/zTree/ztree.vue +++ b/src/components/giantTree/zTree/ztree.vue @@ -121,6 +121,7 @@ this.ztreeSetting.check.enable = this.showCheckbox; if (this.ztreeObj) { + this.list = this.ztreeObj.getNodes(); this.ztreeObj.destroy(); } this.$nextTick(() => { @@ -150,7 +151,7 @@ btn.addEventListener('click', (e) => { e.stopPropagation() // this.clickRemove(treeNode) - _vue.$emit("addNode", treeNode); + _vue.$emit("onAddNode", treeNode); }) item.appendChild(btn); -- Gitblit v1.8.0