el-tree setChecked实现父子不联动

2024.1.29今天我学习了如何使用el-tree的setChecked用法,在使用el-tree的时候我们需要进行回显情况:如:

javascript 复制代码
[{id:'1',name:'张三',
children:[{id:'1-1',name:'张三四'},{id:'1-2',name:'张三五'}]},
{id:'2',name:'李四'}]

如果我们存id: '1','2',是可以把整个树都回显,但是如果在id为2的父数据里面添加子节点,如:

javascript 复制代码
[{id:'1',name:'张三',
children:[{id:'1-1',name:'张三四'},{id:'1-2',name:'张三五'}]},
{id:'2',name:'李四',
children:[{id:'2-1',name:'李四三'}]}]

这样会把'2-1'的子节点也一起回显了,这就是父子联动。

但是我们希望的是父节点变化,子节点不受影响,也就是父子不联动。

我们可以使用setChecked方法:

javascript 复制代码
let all_codes = ['1','1-1','1-2','2']
   all_codes.forEach(item=>{
      this.$refs.tree.setChecked(item,true,false)//判断子节点数据是否存在,存在则回显,不用深度遍历
})

这样就可以实现父节点变化,子节点自己改变。

相关推荐
dsyyyyy11019 小时前
JavaScript变量
开发语言·javascript·ecmascript
kyriewen10 小时前
手写 Promise.all、race、any:不到 30 行代码,解决并发异步的所有姿势
前端·javascript·面试
胡志辉的博客11 小时前
深入浅出理解浏览器事件循环:从一道输出题讲到 Chrome 源码
前端·javascript·chrome·chromium·event loop
代码不加糖11 小时前
js中不会冒泡的事件有哪些?
前端·javascript·vue.js
懂懂tty11 小时前
Vue2与Vue3之间API差异
前端·javascript·vue.js
老毛肚12 小时前
软件测试期末考试
vue.js
小二·12 小时前
Next.js 15 全栈开发实战
开发语言·javascript·ecmascript
杨若瑜13 小时前
本地开发环境慢?localhost的锅!
vue.js
Rain50913 小时前
2.1 Nest.js 项目初始化与模块化架构
开发语言·前端·javascript·后端·架构·数据分析·node.js
拾年27514 小时前
从零手写 Ajax:用原生 XHR 搭建前后端交互全流程
前端·javascript·ajax