elementplus虚拟化树形控件一个技巧

342 阅读1分钟

image.png

此时没选中这个子选项 刷新页面后查看

image.png

发现自动勾选了

解决办法 用checkStrictly这个TreeV2 属性 image.png

// 当前角色的权限ID
const checkStrictly = ref(false)
const ruleIds = ref([])
const openSetRule = (row)=>{
    roleId.value = row.id
    treeHeight.value = window.innerHeight - 190
    checkStrictly.value = true
    getRuleList(1)
    .then(res=>{
      ruleList.value = res.list
      // 拿到一级节点id
      defaultExpandedKeys.value = res.list.map(o=>o.id)
      setRuleFormDrawerRef.value.open()

      // 拿到当前角色的权限ID 组成一维数组
      ruleIds.value = row.rules.map(o => o.id)
      setTimeout(() => {
        elTreeRef.value.setCheckedKeys(ruleIds.value)
        checkStrictly.value = false
      }, 150);
    })
}