我有这段代码 ( from here ),我想了解它的作用:
declare global {
interface Window { analytics: any; }
}
我有seen here declare global
是什么意思。
而且我从this question看到了interface
是什么意思。
我知道 window object 是什么意味着。
我不明白上面的代码是什么意思。如果我错了,请更正。该代码意味着分析变量现在被识别为任何类型的全局对象。此外,它还具有您可以访问的窗口属性,如 interface Window
所示。
另外,为什么我们要declare global{/**variable being declared gloabal here.*/}
。为什么我们要使用这种语义来声明一个全局变量。为什么变量放在花括号内而不是像 var goat
这样的东西?
最佳答案
这叫做 Global augmentation ,它是一种特殊的语法/关键字,允许声明全局变量。由于 declaration merging,这些声明与 ECMAScript 定义文件合并TypeScript 的能力。
关于angular - "declare global{ interface Window{ analytics: any; } }"在 angular/Typescript 中是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70095000/