javascript - Ag-Grid setRowData 没有设置网格内的数据
问题描述
我有一个几乎可以完美运行的网格。我在下拉列表中进行选择以获取一组网格数据,效果很好。我正在使用一项服务来保存我所有选择的值和数据,因此当用户导航回页面时,他们不必再次完成检索数据的整个过程。除网格数据外,所有值都保持不变。
我的 onGridReady() 函数如下:
onGridReady(params) {
this.gridApi = params.api;
this.gridColumnApi = params.columnApi;
if(this._forecastService.gridData.length > 0) {
this.filterData();
this.gridApi.redrawRows();
} else {
this.gridApi.showNoRowsOverlay();
}
}
filterData函数如下:
filterData() {
let historyData = this._forecastService.gridData.filter(row => {
if(this._forecastService.history) {
return row.Section === "History";
}
});
let retailData = this._forecastService.gridData.filter(row => {
if(this._forecastService.retail) {
return row.Section === "Retail";
}
});
let volumeData = this._forecastService.gridData.filter(row => {
if(this._forecastService.volume) {
return row.Section === "Volume";
}
});
let nsiData = this._forecastService.gridData.filter(row => {
if(this._forecastService.nsi) {
return row.Section === "NSI";
}
});
let deadNetData = this._forecastService.gridData.filter(row => {
if(this._forecastService.deadNet) {
return row.Section === "Dead NET";
}
});
let executionData = this._forecastService.gridData.filter(row => {
if(this._forecastService.execution) {
return row.Section === "Execution";
}
});
this.filteredData = [...historyData, ...retailData, ...volumeData, ...nsiData, ...deadNetData, ...executionData];
if(this.filteredData.length === 0 && this._forecastService.gridData.length > 0) {
this.filteredData = [...this._forecastService.gridData];
}
this.gridApi.setRowData(this.filteredData);
}
我已经放置了浏览器断点并单步执行了代码。数据就在那里,正如我所料,它到达了 setRowData(),除了网格中没有显示数据。