tree组件的一些.

本文介绍了如何使用Element UI的el-tree组件实现树形结构的选择、状态管理以及节点过滤功能,包括数据绑定、默认勾选、事件处理(handlecheck2和check)以及数组操作(removeAaary)。重点展示了节点状态切换和过滤逻辑的实现。
摘要由CSDN通过智能技术生成

tree组件的一些...


      <el-tree
        ref="trees"
        class="h-100 page-tree_body-list"
        :filter-node-method="filterNode"
        node-key="phone"
        :default-checked-keys="keylist"
        :data="userTreeList"
        :props="TreeProp2"
        show-checkbox
        @check-change="handlecheck2"
        @check="check"
      ></el-tree>

      userTreeList: [],
      keylist: [],  //默认勾选的数组 要设置Node-key
      selectList: [],
      内部节点树形结构配置选项
      TreeProp2: {
        label: "userName",
      },


 勾选了tree后触发的事件
勾选当前节点,会有当前节点的信息,已经check的truefalse的状态
    handlecheck2(data, data2, data3) {
       console.log(data, data2);

       if (data2 == true) {
         this.selectList.push(data);
       } else {
         if (this.selectList && this.selectList.length) {
         this.selectList = this.removeAaary(this.selectList, data)
       }
      }
      console.log(this.selectList);
    },



    
   这个方法会出现当前已勾选节点,或者半节点的状态
    check(data, node) {
      console.log(data, node);
      this.selectList = [...node.checkedNodes, ...node.halfCheckedNodes]
      console.log(this.selectList);
    },







   删除数组中的某一个对象
    _arr:数组
    _obj:需删除的对象
    
    removeAaary(_arr, _obj) {
      var length = _arr.length;
      for (var i = 0; i < length; i++) {
        if (_arr[i] == _obj) {
          _arr.splice(i, 1); //删除下标为i的元素
          return _arr;
        }
      }
    },   




      节点过滤
    filterNode(value, data) {
      if (!value) return true;
      return data.nodeName.indexOf(value) !== -1;
    }, 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值