我为此失去了理智和头发。我在 Angular 2 中导入 HighCharts,但需要一些额外的库。到目前为止,在我的代码中我有
import {ChartModule} from 'angular2-highcharts';
@NgModule({
....
imports:[
ChartModule.forRoot(require('highcharts'), require('highcharts/modules/drilldown'))})
]
但我不断收到此错误
错误中的错误遇到静态解析符号值。调用函数'ChartModule'。不支持函数调用。考虑将函数或 lambda 替换为对导出函数的引用。
所以我尝试了
export function highchartsRequire:any {
return{
require('highcharts'),
require('highcharts/modules/drilldown')
}
}
...
ChartModule.forRoot(highchartsRequire())
还是不行。有任何想法吗?
使用角度 2 角度 cli:1.0.0-beta.30
更新 - 由于 JayChase,它部分工作
这有效
export function highchartsFactory() {
return require('highcharts');
}
但我不能一次需要两个
declare var require: any;
export function highchartsFactory() {
return function () {
require('highcharts');
require('highcharts/modules/drilldown')
};
}
@NgModule({
imports: [
ChartModule
],
providers: [
{
provide: HighchartsStatic,
useFactory: highchartsFactory
}
],
有任何想法吗?谢谢你。