angular - 从另一个模块扩展 typescript 接口(interface)

标签 angular typescript highcharts typescript-typings

我正在使用 Highcharts 类型,我需要扩展它定义的几个对象/接口(interface)以添加我自己的一些属性。例如

declare namespace Chart {  
  interface ChartOptions extends Highcharts.ChartOptions {
    series: ResourceSeries[];
  }
}

图表.组件.ts

import ChartOptions = Chart.ChartOptions;
export class ChartComponent {
}

这失败了,给我“图表未定义”。同时,如果在另一个使用 ChartComponent 指令的(主)模块中使用,则导入有效。

最佳答案

导入接口(interface)、扩展它并重新导出怎么样?

// chart-options.extended.ts
import { ChartOptions as ChartOptionsBase } from 'highcharts'

interface ChartOptionsExtended extends ChartOptionsBase {
    extensionProperty: string
}

export { ChartOptionsExtended as ChartOptions }

不确定您使用的类型/类型系统,但我使用的是 Typescript 2.0 样式,它不使用“环境”类型:

npm install --save highcharts @types/highcharts

关于angular - 从另一个模块扩展 typescript 接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41709329/

相关文章:

javascript - 具有双轴断点和拖动点的 Highcharts

css - Angular 4 + Bootstrap 4 页脚位于页面底部

Angular 2路由到同一条路线

Angular - 删除后刷新/获取数据

typescript - 如何在 TypeScript 中为此依赖注入(inject)容器声明通用的映射类型

javascript - Highcharts 饼图中的多个标签

javascript - firebase 使用用户 token 设置数据

javascript - 如何在多次点击事件上创建队列

javascript - 错误 TS2349 : Cannot invoke an expression whose type lacks a call signature. 类型 '{ ; }' 没有兼容的调用签名

javascript - 模态内的 highcharts web 图表