el-tree 实现 折叠/展开

通过文档可找 default-expanded-keys 默认展开的节点的 key 的数组

通过将所有属性节点的 id 存入数组实现全部展开和折叠

<template>
	<div>
		<el-button type="primary" @click="showAll" >
			{{ this.defaultExpandedKeys.length === 0 ? '展开' : '折叠' }}
        </el-button>
         <el-tree :data="data" :default-expanded-keys="defaultExpandedKeys" />
	</div>
</temepate>

<script>
export default {
	data() {
		return {
			defaultExpandedKeys:[] //存储展开的树形节点
		};
	},
	methods: {
		//展开全部
		showAll() {
			if(this.defaultExpandedKeys.length === 0) {
				return this.modelTreeOptions.forEach((item) => {
					this.defaultExpandedKeys.push(item.id);
					item.children.forEach((i) => {
						this.defaultExpandedKeys.push(i.id);
					});
				});
			}
		
			this.getTree(); //重新获取树形数据 并将默认展开设为空
			this.defaultExpandedKeys = [];
		}
	}
}
</script>

效果:
折叠效果
展开效果

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

幼儿园里横走着

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值