2017-12-18 185 views
0

想我一個模塊限制變量聲明模塊

declare global { 
    var SomeVar: {}; 
} 

在寫現在,任何模塊可以使用「SomeVar」全局變量。 我想限制只輸入到當前文件。

可能嗎?

回答

1

如果你是一個模塊中,你可以使用:

declare var SomeVar: {}; 

而且SomeVar將只在該模塊/文件中可用。

我需要引用不是來自我的模塊的全局。

正如你可以從下面的例子中看到,一些模塊拍攝,你可以在模塊內同時使用SomeVarASomeVarB

declare global { 
    var SomeVarA: {}; 
} 

declare var SomeVarB: {}; 

const a = SomeVarA; 
const b = SomeVarB; 

這兩個聲明可以代表一個全局變量的,唯一的區別是,SomeVarB在程序中的任何其他模塊可見的,而SomeVarA是。

例如,在另一個模塊將出現以下情況...

// OK 
const a = SomeVarA; 

// Cannot find name 'SomeVarB'. Did you mean 'SomeVarA'? 
const b = SomeVarB; 
+0

我需要引用一些全球性,是不是從我的模塊。 –

+0

嗨@NN_我已經添加了一個擴展的解釋來說明這一點。 – Fenton