TypeScript:在多个文件中声明类的函数

时间:2015-10-14 10:04:11

标签: typescript

是否可以将类声明拆分为文件? 例如,一个文件中的属性,构造函数和一些函数以及其他文件中的其他函数?

2 个答案:

答案 0 :(得分:1)

该功能名为partial classes,目前尚不支持。

您可以将此+1添加到此错误问题https://github.com/Microsoft/TypeScript/issues/563:)

答案 1 :(得分:1)

就像MartyIX写的那样,它不是直接支持的。

但是,有一种方法可以做到这一点。这些方法需要定义为属性,但这样做会导致继承问题。

文件1:

class Foo {
    bar() {}
    hello: (world: string) => any;
}

文件2:

Foo.prototype.hello = function (world: string) {
    console.log('hello ' + world);
};

// Works
new Foo().hello('world');

class Bar extends Foo {}

// Works
new Bar().hello('world');

class Bam extends Foo {}
    // Error TS2425
    hello () {}
}