使用element-ui的el-tree组件setCheckedKeys设置无效的解决办法/setCheckedNodes设置不上数据 

当我们使用el-tree时经常会涉及到回显,有的时候回显失败怎么解决,下面是我常用的两种回显方式

第一种:

  const filterA = ['1','2'];//数组里是数字还是字符串都无所谓,只要id是真的,方法都有效
 this.$refs.tree1.setCheckedNodes(filterA);

            

第二种:


          filterA.forEach(item => {
            this.$nextTick(() => {
              this.$refs.tree2.setChecked(item, true, false);
            });
          });

注意:一定要确保树形选择器里的数据先与上方代码获取到

 async mounted() {
   await this.getOrgList();//优先树形数据
   
    this.getMessageDetail();//然后执行回显
   
    }

  },

关于el-tree的禁用,你只需要在你想要禁止选择或取消选择的数据里加一个disabled参数

res.data.data.receiveDepList.forEach(item=>{item.disabled=true;});
res.data.data.copyDepList.forEach(item=>{item.disabled=true;});

关于所选项滞空,参数只能是数组

 this.$refs.tree1.setCheckedNodes([]);

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐