elementUI树形表格展开至指定层级(之后的层级采用懒加载方式显示)

elementUI树形表格展开至指定层级(之后的层级采用懒加载方式显示)

2023年6月22日发(作者:)

elementUI树形表格展开⾄指定层级(之后的层级采⽤懒加载⽅式显⽰)element UI 树形表格展开⾄指定层级(半懒加载⽅式)需求:数据量较⼤,要求展开树(⾄少展开⾄某⼀层,即使使⽤根据Id展开的default-expanded-keys这个参数,页⾯渲染也是很卡)总体思路:先在后端获取需要展开的层级,组成树形数据发送给前端,然后前端全部展开(这⾥后端需要处理该树最后⼀层是否是叶⼦节点,做好标记),点击所显⽰的树的叶⼦节点时再进⾏懒加载未解决问题:因为设置了全部展开,所以指定层级前⾯的三⾓展开符号是展开的,不影响懒加载

row-key="id" highlight-current-row default-expand-all stripe lazy :load="load" @row-click='selectRow' :height="viewContentHeight" :tree-props="{children: 'children', hasChildren: 'hasChildren'}">// ⽅法//设置表格树形结构前⾯的三⾓展开符号(需要在懒加载之前执⾏) h(item => { Children(item) }) // 遍历树形结构 setHasChildren (treeData) { //我这⾥是⽤children来做该节点是否有孩⼦的标志,bool类型 if (en && !(en instanceof Array)) { ldren = true } else { if (en instanceof Array) { h(item => { Children(item) })}}}, *//懒加载部分* load (tree, treeNode, resolve) { // 发送请求向后端继续获取数据 getTreeChildren(/*这⾥是请求参数*/).then(res => { if (s) { let result = [] result = if ( > 0) { h(item => { if (en) { // 设置前⾯的三⾓展开符号(我这⾥还是⽤children来做该节点是否有孩⼦的标志,bool类型) ldren = true}})} resolve(result)}})},// 最初渲染的表格源树形数据(懒加载之前) treeData: [{ id: 1, date: '2016-05-02', name: '王⼩虎', address: '上海市普陀区⾦沙江路 1518 弄' }, { id: 2, date: '2016-05-04', name: '王⼩虎', address: '上海市普陀区⾦沙江路 1517 弄' children:true }, { id: 3, date: '2016-05-01', name: '王⼩虎', address: '上海市普陀区⾦沙江路 1519 弄', children: [{ id: 31, date: '2016-05-01', name: '王⼩虎', address: '上海市普陀区⾦沙江路 1519 弄' }, { id: 32, date: '2016-05-01', name: '王⼩虎', address: '上海市普陀区⾦沙江路 1519 弄' children:true }] }, { id: 4, date: '2016-05-03', name: '王⼩虎', address: '上海市普陀区⾦沙江路 1516 弄' }]

发布者:admin,转转请注明出处:http://www.yc00.com/news/1687381725a5835.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信