使用 Highcharts 的本地 Angular 库在生产模式下中断
Local Angular library using Highcharts breaks in production mode
我写了一个 Angular 库来包装 Highcharts 以满足我的需要。
在dev模式下本地使用时运行良好,但prod模式的优化似乎打破了它。
问题来自Highcharts 模块需要添加一些功能,例如添加新的图表类型(即TreeMap)。这些模块似乎没有在 prod 模式下加载,导致 Highcharts 错误 (https://www.highcharts.com/errors/17/)。
这是我的第一个 Angular 库,所以配置一定是错误的,但我找不到问题所在。
我在这个 repo 中推送了问题的最小重现:https://github.com/Korbraan/angular-library-opti-bug
首先使用 ng build charts
构建库,然后尝试使用 ng serve --prod
提供它。它坏了,但它适用于 ng serve
.
要解决此问题,您必须在构造函数中移动模块初始化:
constructor() {
const self = this;
Treemap(self.Highcharts);
Heatmap(self.Highcharts);
}
我写了一个 Angular 库来包装 Highcharts 以满足我的需要。
在dev模式下本地使用时运行良好,但prod模式的优化似乎打破了它。
问题来自Highcharts 模块需要添加一些功能,例如添加新的图表类型(即TreeMap)。这些模块似乎没有在 prod 模式下加载,导致 Highcharts 错误 (https://www.highcharts.com/errors/17/)。
这是我的第一个 Angular 库,所以配置一定是错误的,但我找不到问题所在。
我在这个 repo 中推送了问题的最小重现:https://github.com/Korbraan/angular-library-opti-bug
首先使用 ng build charts
构建库,然后尝试使用 ng serve --prod
提供它。它坏了,但它适用于 ng serve
.
要解决此问题,您必须在构造函数中移动模块初始化:
constructor() {
const self = this;
Treemap(self.Highcharts);
Heatmap(self.Highcharts);
}