hanbaoshan
2021-02-25 77ea6f71e7532e89b974bcb65ce5a6b67a680ddb
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"
@@ -80,7 +82,9 @@
          { required: true, message: "请输入节点名称", trigger: "change" },
          { min: 2, max: 10, message: "长度在2到10个字", trigger: "change" }
        ]
      }
      },
      evt: {},
      treeId: '',
    };
  },
  created() {
@@ -101,8 +105,27 @@
  methods: {
    handleCreated: function (ztreeObj) {
      this.ztreeObj = ztreeObj;
      // console.log("handleCreated")
      // onCreated 中操作ztreeObj对象展开第一个节点
      // 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)
        //摄像机信息更新信息后,如果节点位置有变tId就不准了,this.TreeDataPool.selectedNode此时还是旧的信息
        console.log('selecBode',this.TreeDataPool.selectedNode)
        console.log('selectedNode.tId',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 +192,7 @@
    importCameras(node) {
      this.$emit("import", node);
    },
    addNode(event, node) {
    addNode(node) {
      this.dialogForm = {
        text: "",
        method: "add",
@@ -222,6 +245,12 @@
      this.showDialog = true;
    },
    itemClick(evt, treeId, treeNode) {
      debugger
      //let itemClickArgs = {evt,treeId};
      this.evt = evt;
      this.treeId = treeId;
      console.log(evt,treeId)
      // sessionStorage.setItem('itemClickArgs',JSON.stringify(itemClickArgs))
      this.TreeDataPool.selectedNode = treeNode;
      this.TreeDataPool.treeType = this.treeName;
@@ -234,6 +263,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;