angularjs – 使用异步数据加载在角网格(ag-grid)中创建树
发布时间:2020-12-17 17:41:20 所属栏目:安全 来源:网络整理
导读:我正在尝试使用角度网格(ag-grid)来显示文档中提供的示例中的树: http://www.angulargrid.com/example-file-browser/index.php 在给定的示例中,已经提供了所有数据.扩展行组时如何使用异步数据加载?我的猜测是我需要编写自己的组行渲染器. 解决方法 我最近
我正在尝试使用角度网格(ag-grid)来显示文档中提供的示例中的树:
http://www.angulargrid.com/example-file-browser/index.php 在给定的示例中,已经提供了所有数据.扩展行组时如何使用异步数据加载?我的猜测是我需要编写自己的组行渲染器. 解决方法
我最近在我的React.js应用程序中遇到了同样的问题并找到了解决方案.它与@leden发布的类似,但我找到了解决方案如何维护表行更新之间的当前行扩展.
解决方案如下: >为每个顶级行添加虚拟子行.可以为空或者可以在第一列中加载…字符串. getNodeChildDetails = (rowItem) => { if (rowItem.children) { return { group: true,expanded: rowItem.id in this.expandedRows,children: rowItem.children,}; } else { return null; } }; >在事件rowGroupOpened上,我们会跟踪哪些行被展开. rowGroupOpened = (param) => { const id= param.node.data.id; if(!param.node.expanded) { delete this.expandedRows[id]; return; } this.expandedRows[id] = true; if (param.node.data.children.length !== 1) { // Here we need to check if only dummy row is present return; } this.api.showLoadingOverlay(); // Here I simulate fetching data from server setTimeout(() => { this.rowData.forEach((e) => { if (e.id == id) { e.children = [ // Add fetch rows ] } }); this.api.setRowData(this.rowData); // Setting data,will trigger getNodeChildDetails call on each row this.api.hideOverlay(); },1000); }; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- [转]可考虑在你下一个项目中使用的 50 个 Bootstrap 插件
- scala – 使用模式将ConsumerRecord值转换为spark-kafka中的
- angularjs – 从Angular 1.0升级到1.3.2角的主要挑战是什么
- angular-file-upload+springMVC的使用
- 正确使用scalaz Future进行异步执行
- angular – 防止触发更改检测的本机浏览器事件(如滚动)
- 在Scala 2.9之后将删除哪些包/类/方法/功能?
- angularjs – 如何更新ng-grid gridOptions.sortInfo?
- 如何删除bash函数?
- worklight中adapter(webservice)