【发布时间】:2012-09-25 07:48:52
【问题描述】:
我目前正试图将此代码移植到 TypeScript。
if (typeof window !== 'undefined') {
window.requestAnimFrame = (function(callback){
return window.requestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
window.oRequestAnimationFrame ||
window.msRequestAnimationFrame ||
function(callback){
window.setTimeout(callback, 1000 / 60, new Date().getTime());
};
})();
}
我得到的 tsc 错误是:
提供的参数与调用目标的任何签名都不匹配
我尝试声明一个包含签名的interface WindowEx extends Window,然后转换为(< WindowEx>window).xxx,但我怀疑这是转换此“典型”代码的正确方法。
尝试:
interface WindowEx extends Window {
requestAnimFrame(callback, target?):number;
webkitRequestAnimationFrame(callback, target?):number;
mozRequestAnimationFrame(callback, target?):number;
oRequestAnimationFrame(callback, target?):number;
// msRequestAnimationFrame already at WindowAnimationTiming interface
}
【问题讨论】:
标签: javascript porting typescript