【问题标题】:What is 'declare global' in Typescript?Typescript 中的“声明全局”是什么?
【发布时间】:2019-11-24 04:29:55
【问题描述】:

什么是“声明全局”,怎么可能?我在 Lodash 类型中找到了这段代码。问题是,当我尝试将其复制到 my.d.ts 文件中时,因为 global 不是命名空间、模块、函数或 var,我不允许这样做。所以问题是如何在 Typescript 中声明这个声明。

PS 那么也许有一些额外的编译器选项可以实现这一点?

declare global {
    interface Set<T> { }
}

【问题讨论】:

    标签: typescript typescript-typings


    【解决方案1】:

    这不依赖于编译器设置。 declare global 在具有importexport 的文件中使用以在全局范围内声明事物。这在包含 importexport 的文件中是必需的,因为这些文件被视为模块,并且在模块中声明的任何内容都在模块范围内。

    在不是模块的文件(即不包含import/export)中使用declare global 是错误的,因为这样的文件中的所有内容都在全局范围内。

    【讨论】:

    猜你喜欢
    • 2017-06-06
    • 2022-01-15
    • 1970-01-01
    • 2020-05-15
    • 1970-01-01
    • 2020-07-29
    • 2017-07-25
    • 2016-09-18
    • 1970-01-01
    相关资源
    最近更新 更多