【发布时间】:2020-10-26 13:38:13
【问题描述】:
我将 ag-grid 升级为在 Angular 7 中使用 ag-grid 23.2.0。当我过滤页面时,它可以工作。然后我离开了页面,但我收到了这样的错误。有人知道吗?
unable to find bean reference frameworkOverrides while initialising BeanStub
【问题讨论】:
我将 ag-grid 升级为在 Angular 7 中使用 ag-grid 23.2.0。当我过滤页面时,它可以工作。然后我离开了页面,但我收到了这样的错误。有人知道吗?
unable to find bean reference frameworkOverrides while initialising BeanStub
【问题讨论】:
就我而言,此错误的根本原因是我试图使用已卸载的网格 API。 我的解决方案是每当重新安装网格时,API 对象必须被替换。
onGridReady(params) {
this.gridApi = params.api;
}
【讨论】:
我降级到 23.0.0 并且工作正常。也许你会得到一个错误
ERROR in ./node_modules/ag-grid-angular/fesm5/ag-grid-angular.js
Module build failed (from ./node_modules/@angular-devkit/build-optimizer/src/build-optimizer/webpack-loader.js):
> node --max_old_space_size=16384 ./node_modules/@angular/cli/bin/ng build --prod
TypeError: Cannot read property 'kind' of undefined
如果您使用 23.0.0 ag-grid 版本。你应该改变
"buildOptimizer": true, --> "buildOptimizer": false,
在 angular.json 中
【讨论】:
对我来说,这个错误似乎来自重复的图表 ID 问题。 我有两个选项卡,每个选项卡都有一个网格。两个选项卡中的图表使用相同的 ID。由于某种原因,在切换选项卡时组件没有正确销毁,这意味着我在选项卡之间有重复的 ID,所以我只是插入了一个额外的变量,以使两个 ID 中的每一个在两个选项卡中都是唯一的。
我是从这里出发的:
chartContainer: document.querySelector('#chart' + this.id)
到这里:
chartContainer: document.querySelector('#chart' + this.id + (this.userTab ? 0 : 1))
【讨论】: