用数据重新填充农业网格

时间:2018-07-03 12:46:05

标签: angular typescript ag-grid

我正在使用组件文件中的public class HouseList{ public class HouseData{ List<House> Houses {get;set;| } public string Code {get;set;} public string Message {get;set;} public HouseData Data {get;set;} } var houseList = JsonConvert.DeserializeObject<HouseList>(json).Data.Houses; 方法从html初始化ag-grid。

onGridReady

在我的<div style="flex-grow:1;"> <ag-grid-angular style="float:left;width: 100%; height: 201px;margin-top:10px;" class="ag-theme-balham" [gridOptions]="gridOptions" [columnDefs]="columnDefs" (gridReady)="onGridReady($event)" [rowData]="rowData" #grid > </ag-grid-angular> </div> 文件中,我正在处理.ts,如下所示:

onGridReady

onGridReady(params?: any) { console.log("onGridReady"); var datasource = { getRows: (params: IGetRowsParams) => { this.info = "Getting datasource rows, start: " + params.startRow + ", end: " + params.endRow; console.log(this.info); this.getRowData().then(data => { if (this.stopApiCalls) { var lastRow = this.allTableData.length; params.successCallback(data, lastRow) } else { params.successCallback(data) } }) } }; console.log(">>",datasource); params.api.setDatasource(datasource); } 用于使用http从后端服务获取数据。

我现在需要重新启动并在其他组件文件中处理的某个事件上使用this.getRowData。我可以访问我的ag-grid组件中的方法。但是如何从其他组件调用onGridReady事件?

1 个答案:

答案 0 :(得分:0)

gridReady事件恰好在网格初始化之后发生,因此,如果您想获取动态组件,则需要更复杂的解决方案。

可能的hack:通过带有动态参数的路由器重新渲染视图

相关问题