typescript中命令空间只支持导出class?不支持interface和type类型?

typescript文档上写着,namespace命令空间,支持导出类、接口。在ide中只有类的提示,却没有接口的提示?

image.png

image.png

namespace SomeNameSpaceName {
    export interface ISomeInterfaceName {      }
    export class SomeClassName {      }
}
阅读 2.1k
2 个回答

因为下面的变量未定义导致的,这样写就可以了

image.png

而且支持跨文件取值,提示

image.png

interface 只能出现在声明里,不像 class 可以单独出现,因为 class 里可以有静态成员或构造器能“点”出来。

let foo: SomeNameSpaceName.I... // 你这么写就有智能提示了

另外 namespace 应只出现在声明文件中(即 .d.ts)。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进