我正在为fabric.js 提供一个类型定义文件。一般结构如以下示例所示:
declare module fabric {
export interface Canvas {
selectionBorderColor: string;
selectionColor: string;
...
}
var Canvas: {
new (): Canvas;
}
}
这种模式允许我以“类似接口”的方式使用 fabric.Canvas,以便变量与 fabric.Canvas 接口相关联。同时它允许我调用“静态成员”(例如fabric.Canvas的构造函数)。
但这在类中使用接口“fabric.Canvas”的字段时会导致问题。以下示例显示了这种情况:
仅在将接口放置在模块中时才会出现此问题,否则一切正常。
这个问题有什么解决方案吗?