打字稿原型定义文件

时间:2016-12-11 02:50:39

标签: typescript prototype

我正在学习Typescript,我想利用原型设计。我还使用了一个带有打字文件的外部库。

到目前为止,这都有效。

// main.ts
declare class Foo {}

interface Foo {
  bar(): void;
}

Foo.prototype.bar = function() {}

但是,声明是在一个不同的文件中,所以当我尝试这个时它不起作用。

foo.d.ts:

declare class Foo {}

main.ts:

interface Foo {
  bar(): void;
}

Foo.prototype.bar = function() {}

main.ts:TS6133:' Foo'声明但从未使用过 main.ts:TS2339:Property' bar'在' Foo'。

类型中不存在

是否有遗漏的编译标志或其他什么?如何在单独的文件中进行编译?

1 个答案:

答案 0 :(得分:0)

您需要使用module augmentation

// main.ts
import { Foo } from "./foo";

Foo.prototype.bar = function() {}