2017-03-06 195 views
0

我正在擺脫我的程序中的大多數全局變量,但有些永遠是有用的。無法用TypeScript聲明全局變量

我已經看過了答案,這幾次,放棄了尋找我自己的答案 - 宣佈與TS一個全局變量的假設的方法是,像這樣:

declare var x: string; 

這將轉化爲 - global.x = 'foo';

但是這個聲明沒有擺脫Webstorm中的編譯錯誤或IDE警告。

在我的程序中聲明全局變量的最佳方法是什麼?我認爲最好的辦法是使用.d.ts文件。

這裏是警告我看到類型:

enter image description here

回答

0

不知道這是做的最好的方式:

在我在我的項目文件名爲 suman.d.ts

,我有:

import Global = NodeJS.Global; 

interface SumanGlobal extends Global { 
    _writeTestError: Function, 
    sumanRuntimeErrors: Array<Error | string>, 
    sumanOpts: Object, 
    sumanUncaughtExceptionTriggered: boolean 
} 

declare var global: SumanGlobal; 

似乎暫時工作