是否需要在d.ts文件中定义TypeScript接口?

时间:2013-04-16 14:42:59

标签: typescript

我正在写一个TypeScript类:

export class Test
{
    property : string;
}

我想扩展Knockout界面,KnockoutObservable,就像已经在Knockout.d.ts中的StringBool一样;

export declare interface KnockoutObservableTest extends KnockoutObservableBase
{
    ...
}

如果我的Test.ts文件中的接口与类一起使用,我就无法使用它。 如果我把它放在一个单独的App.d.ts文件中并引用它,它似乎可以工作。

我的测试是

var value : KnockoutObservableTest;

想知道为什么它必须在d.ts文件中,或者有些东西我不知道?

1 个答案:

答案 0 :(得分:1)

从与Test.ts相同的文件中加载...

import TestModel = module('Test');

...接口在TestModel.KnockoutObservableTest中声明,而不是仅在引用.d.ts文件时位于根作用域中。