el-table原始列表转换成树形数据

element-ui的el-table可以显示树形数据,不过对数据格式有要求,只有带children属性的行才能树形展开和收起,假设原始数据是json列表,数据已经按colx排序,我们希望在el-table中同colx值得只显示一条,有多条数据的可以树形展开和收起。下面我们用js来实现,该转换功能在node后端或者javascript前端都可以。

javascript 复制代码
function tree(list){
	if (list.length==0) return [];
	let newlist=[list[0]];
	
	for (let i=1;i<list.length;i++) {
		if (list[i]["colx"]===newlist[newlist.length-1]["colx"]) { 
			if (newlist[newlist.length-1]["children"]==undefined) {
				newlist[newlist.length-1]["children"]=[list[i]]
				}
			else { newlist[newlist.length-1]["children"].push(list[i]); }
			}
		else {
			newlist.push(list[i]);
			}
		}
	return newlist;
	}
相关推荐
San30.2 小时前
从代码规范到 AI Agent:现代前端开发的智能化演进
javascript·人工智能·代码规范
岁月宁静2 小时前
从0到1:智能汇 AI 全栈实战,拆解多模态 AI 应用开发全流程
前端·vue.js·node.js
廾匸6402 小时前
语义化标签
前端·javascript·html
汪汪队立大功1232 小时前
selenium中执行javascript,是否等价于在浏览器console位置执行
javascript·selenium·测试工具
Q_Q5110082853 小时前
python+django/flask的宠物用品系统vue
spring boot·python·django·flask·node.js·php
嘴平伊之豬4 小时前
跟着AI速度cli源码三-交互问答系统
前端·node.js
soda_yo5 小时前
搞不懂作用域链?这篇文章让你一眼秒懂!
javascript·面试
扑棱蛾子5 小时前
前端代码一键打包上传服务器?10分钟配好永久告别手动部署!
前端·node.js
apollo_qwe5 小时前
Set 和 Map常用场景代码片段
javascript
Hilaku5 小时前
我为什么说全栈正在杀死前端?
前端·javascript·后端