angular - 用数据重新填充 ag-grid
问题描述
我正在使用onGridReady
组件文件中的方法从 html 初始化 ag-grid。
<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);
}
this.getRowData
用于使用 http 从后端服务获取数据。
我现在需要重新初始化并使用onGridReady
在不同组件文件中处理的某个事件。我可以访问我的 ag-grid 组件中的方法。但是我怎样才能onGridReady
从其他组件调用事件呢?
解决方案
gridReady
事件恰好在网格初始化之后发生,因此如果您想获得动态组件,则需要更复杂的解决方案。
可能的破解:通过带有动态参数的路由器重新渲染视图
推荐阅读
- mysql - 在新的行排序中获取值的位置
- ggplot2 - 如何在 gpplot 面板(facet_grid)中提取 stat_smooth 曲线最大值?
- line - 如何检查所有推送给多个用户的消息(一次)是否对所有用户都成功?
- java - 如何在 Java 中使用 Switch 和 Enum 参数(不是 ENUM VALUE)?
- python - 将多个变量定义为定义的结构类型
- amazon-web-services - 我的网站有一个非常不寻常的设置,完全由 aws、s3、cloudwatch 和 lambda 完成。为什么它不起作用?
- typescript - 区分联合的动态调度
- automl - 神经架构搜索的输出是什么?
- javascript - 在bootstrap-vue中没有jquery的b表中创建一个新的可编辑行
- javascript - 如果我检查了图像,请更改背景图像