javascript - 将 Angular ECharts 导入 Stackblitz 15.1 项目?

标签 javascript angular echarts stackblitz ngx-echarts

Stackblitz 现在对 Angular 项目使用独立配置,当我尝试初始化 Angular ECharts (ngx-echarts) 的模块时它会产生以下错误:

Error in src/main.ts (18:5)
Type 'ModuleWithProviders<NgxEchartsModule>' is not assignable to type 'readonly any[] | Type<any>'.

这就是 ngx-echarts 模块的初始化方式:

  imports: [
    CommonModule,
    NgxEchartsModule.forRoot({
      echarts: () => import('echarts'),
    }),
  ],

在 Stackblitz 上之前的 Angular 非独立版本中,这工作得很好。

我们如何在 Stackblitz Angular 15.1 项目中的模块上调用 forRoot

Here's a Stackblitz Demo

最佳答案

documentation指示在这种情况下应提供 InjectionToken。没有提供者的模块是单独导入的,并且提供的配置如下:

import { NgxEchartsModule, NGX_ECHARTS_CONFIG } from 'ngx-echarts';

@Component({
  standalone: true,
  selector: 'my-chart',
  template: `
    <div echarts [options]="chartOptions" class="demo-chart"></div>
  `,
  imports: [NgxEchartsModule],
  providers: [
    {
      provide: NGX_ECHARTS_CONFIG,
      useFactory: () => ({ echarts: () => import('echarts') }),
    },
  ]
})

此方法也适用于 NgModule

关于javascript - 将 Angular ECharts 导入 Stackblitz 15.1 项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75313222/

相关文章:

javascript - .includes() 在 Internet Explorer 中不起作用

javascript - 无法读取 Angular 中未定义的属性 'find'?

java - Selenium 不等待元素可点击

javascript - eCharts 导入不起作用。未定义 _DEV__ 失败

animation - ECharts 仅禁用符号(marker)动画

javascript - 如何增加长日期字符串轴下方的空间?

javascript - 复选框组获取选中复选框的值jquery

javascript - 如何以 JSON 或 CSV 格式写入数据?

javascript - 平滑滚动到 div id jQuery

angular - 在表行中格式化 XML