相关疑难解决方法(0)

在打字稿模块中扩展"窗口"

如果您使用typescript编写,并且未使用模块,则可以扩展全局Window对象.例如,这编译:

interface Window {
    myCounter: number;
}

window.myCounter = window.myCounter || 0;
++window.myCounter;

function outputLoadingDetails() {
    console.log(`myCounter= ${window.myCounter}`)
}
Run Code Online (Sandbox Code Playgroud)

但是,如果我前缀功能outputLoadingDetailsexport,看来我这个文件转换成一个模块.我现在访问时遇到编译器错误window.myCounter.

interface Window {
    myCounter: number;
}

window.myCounter = window.myCounter || 0; // ERROR: property 'MyCounter' does not exist on type `Window`
++window.myCounter;                       // ERROR: property 'MyCounter' does not exist on type `Window`

export function outputLoadingDetails() {
    console.log(`myCounter= ${window.myCounter}`)  // ERROR: property 'MyCounter' does not exist on type `Window`
}
Run Code Online (Sandbox Code Playgroud)

看来我的接口声明不再扩展全局Window类型. …

typescript

3
推荐指数
2
解决办法
5459
查看次数

标签 统计

typescript ×1