zhangzengfei
2021-04-21 3a2c4f13d1554d4e97463abebf085117b3f1e28f
src/components/giantTree/index.vue
@@ -82,7 +82,8 @@
          { required: true, message: "请输入节点名称", trigger: "change" },
          { min: 2, max: 10, message: "长度在2到10个字", trigger: "change" }
        ]
      }
      },
      curNodeTid: '',
    };
  },
  created() {
@@ -102,6 +103,7 @@
  },
  methods: {
    handleCreated: function (ztreeObj) {
      let _this = this;
      this.ztreeObj = ztreeObj;
      // console.log("handleCreated")
      // onCreated 中操作ztreeObj对象展开第一个节点
@@ -111,9 +113,17 @@
      if (this.TreeDataPool.selectedNode.id) {
        // 取消所有多选的节点,仅保留当前单选的节点
        this.TreeDataPool.selectedNodes = [this.TreeDataPool.selectedNode.id]
        this.curNodeTid = this.TreeDataPool.selectedNode.tId;
        //摄像机信息更新信息后,如果节点位置有变tId就不准了,this.TreeDataPool.selectedNode此时还是旧的信息
        let ztreeNodes = ztreeObj.getNodes();
        //var curNodeTid = '';
        console.log(ztreeNodes)
        _this.findTidByIdFromArr(ztreeNodes);
        console.log('curNodeTid', _this.curNodeTid)
        this.TreeDataPool.selectedNode.tId = _this.curNodeTid;
        let node = this.ztreeObj.getNodeByTId(this.TreeDataPool.selectedNode.tId)
        console.log('selecBode', this.TreeDataPool.selectedNode)
        console.log('selectedNode.tId', this.TreeDataPool.selectedNode.tId)
        // 多选时, 选中单选单击的节点
        if (this.TreeDataPool.multiple) {
          this.ztreeObj.checkAllNodes(false);
@@ -122,6 +132,21 @@
        this.ztreeObj.selectNode(node, false, true)
      }
    },
    findTidByIdFromArr(arr) {
      let len = arr.length;
      let _this = this;
      for (var i = 0; i < len; i++) {
        if (arr[i].id == this.TreeDataPool.selectedNode.id) {
          _this.curNodeTid = arr[i].tId;
          break;
        }
        if (arr[i].children) {
          this.findTidByIdFromArr(arr[i].children);
        }
      }
    },
    onDblClick(evt, treeId, item) {
      if (item.type !== "4" || this.app !== "Camera") {
@@ -241,6 +266,8 @@
      this.showDialog = true;
    },
    itemClick(evt, treeId, treeNode) {
      console.log(evt, treeId)
      this.TreeDataPool.selectedNode = treeNode;
      this.TreeDataPool.treeType = this.treeName;
@@ -253,6 +280,19 @@
      this.TreeDataPool.updateZTreeCheckNodes([treeNode]);
    },
    // itemClick(treeNode) {
    //   this.TreeDataPool.selectedNode = treeNode;
    //   this.TreeDataPool.treeType = this.treeName;
    //   // 多选
    //   if (this.TreeDataPool.multiple) {
    //     // 单击某一个节点文字时 取消所有勾选状态 然后选中自身
    //     this.ztreeObj.checkAllNodes(false);
    //     this.ztreeObj.checkNode(treeNode, true, false, false);
    //   }
    //   this.TreeDataPool.updateZTreeCheckNodes([treeNode]);
    // },
    itemCheck(evt, treeId, treeNode) {
      this.TreeDataPool.selectedNode = treeNode;
      this.TreeDataPool.treeType = this.treeName;
@@ -264,11 +304,11 @@
    },
    //展开
    itemExpand(e, id, node) {
      this.TreeDataPool.foldNodeList[node.id] = true
      delete this.TreeDataPool.foldNodeList[node.id]
    },
    // 折叠
    itemCollapse(e, id, node) {
      delete this.TreeDataPool.foldNodeList[node.id]
      this.TreeDataPool.foldNodeList[node.id] = true
    },
    dropNode(node, item, draggedItem, e) {
      // console.log('dropNode', node, item, draggedItem);