打字稿定义文件中接口的命名空间

时间:2013-10-15 16:30:03

标签: namespaces typescript

我正在为当前没有的JS库编写TypeScript定义文件(.d.ts)。

其他.d.ts文件似乎将所有类型放入'全局'命名空间(如果你看到我的意思),而我正在尝试执行以下操作:

// root valerie object 
//
declare var valerie: Valerie.ValerieStatic;

// additional types for Valerie (all inside this virtual namespace)

declare module Valerie {

    //
    // Static methods on valerie namespace
    //
    interface ValerieStatic {
        // definitions go here.....

这意味着如果它们存在,我不会将我的界面与其他界面交叉。

我的问题是 - 它似乎有效,但这种方法可能存在问题吗?

1 个答案:

答案 0 :(得分:2)

总的来说,这是一个很好的方法。如果您希望人们经常使用Valerie模块中的某些界面类型,您可以考虑将它们提升到顶级,以便引用它们更方便。