声明为TS的全局变量会产生语义错误

时间:2017-12-21 14:44:18

标签: typescript typescript2.0

我有一个全局log对象。我在globals.d.ts中声明了它,如下所示:

declare let log: any;

此文件位于declarations文件夹中,我的tsconfig.json具有以下选项:

"typeRoots": [
      "./node_modules/@types",
      "./declarations"
    ],

我在该文件夹中有另一个声明,特定于框架我确信配置部分正在工作。

但是在尝试转换时,我仍然会收到错误

<file path>: error TS2304: Cannot find name 'log'.

正如我正在研究的那样,使用globals.d.ts文件是事实上告诉TS有关全局变量的方式,以免引发警告。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

使用外部模块时,最好的选择是:

declare global {
    let log: any;
}