1

显然我正在尝试让 facebooks 异步初始化工作。这样做,我需要在对象窗口上创建一个名为“fbAsyncInit”的函数。我在编写网络工作者时遇到了类似的问题,因为我想使用 self.postMessage 但 self 再次作为其界面界面 Window。但是我尝试这样做,typscript 编译器不满意我向窗口添加一个未在 Window 界面中指定的字段。一开始我试着这样做:

interface WindowFB extends Window { 
    fbAsyncInit: ()=>any;
}

declare var window: WindowFB;

这没有帮助,所以我尝试了其他一些方法并设法让类型检查器满意,但它似乎只是被窃听了(因为对于解决方案,它不是 100% 满意)。有谁知道这可能是什么正确的解决方案?

4

1 回答 1

3

“窗口”界面打开。你可以写:

interface Window {
    fbAsyncInit: () => any;
}

window.fbAsyncInit();

由于 lib.d.ts 周围的一些错误,这在 TypeScript Playground 中不太适用,但命令行编译器应该能够接受这一点。

于 2012-10-07T21:36:47.040 回答