5

我正在为一个当前没有的 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.....

这意味着如果我的接口存在,我不会潜在地与其他接口交叉。

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

4

1 回答 1

2

一般来说,这是一个很好的方法。如果Valerie模块中有一些你希望人们经常使用的接口类型,你可以考虑将它们提升到顶层,以便更方便地引用它们。

于 2013-10-15T16:38:23.167 回答