我已经添加了TS到我的React/Redux应用程序。
我在我的应用程序中像这样使用窗口对象:
componentDidMount() {
let FB = window.FB;
}
TS抛出一个错误:
TypeScript错误:属性'FB'不存在类型'Window'。TS2339
我想修正这个错误。
1(不工作)
// Why doesn't this work? I have defined a type locally
type Window = {
FB: any
}
componentDidMount() {
let FB = window.FB;
}
// TypeScript error: Property 'FB' does not exist on type 'Window'. TS2339
2(修复错误)
我在这里找到了答案https://stackoverflow.com/a/56402425/1114926
declare const window: any;
componentDidMount() {
let FB = window.FB;
}
// No errors, works well
为什么第一个版本不工作,但第二个,即使我没有指定FB属性在所有?