- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我目前无法尝试将此代码移植到 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 错误是:
supplied parameters do not match any signature of call target
我试过声明 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
}
最佳答案
这是我为编译您的代码所做的工作。我刚刚定义了 requestAnimFrame()
作为全局变量并将其键入,以便 TypeScript 可以验证对它的调用。没有任何扩展内置类型的好方法,例如 window
目前因此需要做类似 (<any>window).webkitRequestAnimationFrame
的事情.作为一般规则,如果编译器提示并且您知道它是有效的 JavaScript,您总是可以转换为 <any>
使其发挥作用。
var requestAnimFrame: (callback: () => void) => void = (function(){
return window.requestAnimationFrame ||
(<any>window).webkitRequestAnimationFrame ||
(<any>window).mozRequestAnimationFrame ||
(<any>window).oRequestAnimationFrame ||
window.msRequestAnimationFrame ||
function(callback){
window.setTimeout(callback, 1000 / 60, new Date().getTime());
};
})();
关于javascript - 将 JavaScript requestAnimFrame 移植到 TypeScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12724495/
我正在使用 javascript 构建自己的自定义引擎(不要问为什么) 我的代码工作正常,直到我添加了用于画线的 bline 算法(比使用递归函数快得多),然后突然这段代码崩溃了,我不完全确定为什么
如何计算渲染函数执行一次所需的时间?我想稍后将这段时间用于其他功能。目前我只收到 time_ elapsed = 0 。 function render() { window.requestA
我有一个情绪检测,使用 openCV.js 进行人脸检测,使用 tensorflow.js 进行情绪分类。当我开始情绪检测时,我调用 requestAnimFrame(myProcessingLogi
我遵循了使用 requestAnimFrame 绘制简单动画的最佳实践: http://jsfiddle.net/paul/XQpzU/2/light/ 不幸的是,即使在这个例子中(在 Chrome、
我有两个关于 Javascript/HTML5 中的 window.requestAnimFrame 的问题 window.requestAnimFrame 和 window.requestAnima
我将 Box2D 与 WebGL 结合使用。Box2D 需要恒定的帧速率(它的“世界”更新的时间步长)。 function update(time) {//update of box2d world
在编写脚本时,我注意到我的 ajax 比预期多了大约 10 倍,所以我放入了一个“fps 计数器”并注意到它不是每秒运行 10 次,因为预期的 chrome 每秒运行大约 130 次,即/ff/ope
我实际上正在尝试使用 Pixi.js 引擎开发一个小型浏览器游戏。 我希望它有一个真正的架构,所以我使用早午餐服务器(带有 CoffeeScript )。 我想重现示例 1 ( http://www.
我正在为此苦苦挣扎,似乎无法找到更多引用资料。 我正在使用由 Google 编写的 requestAnimFrame: requestAnimFrame = (function() { retur
哪个最适合 Canvas 动画? requestAnimFrame 或 setInterval ? 最佳答案 requestAnimationFrame 保证您的动画恰好在浏览器准备好绘制新帧时运行。
我目前无法尝试将此代码移植到 TypeScript。 if (typeof window !== 'undefined') { window.requestAnimFrame = (functio
我正在尝试将视频添加到 Fabric.js,我已经完成了。 但有一个问题: 如何停止或取消requestAnimFrame()? 示例: var canvas = new fabric.Canvas(
我最近使用 requestAnimFrame 创建了一个 Canvas 动画,并且对 Chrome 中的结果非常满意,但在 FF 中,看起来正在运行幻灯片。我不知道是什么导致了这个问题。 此外,当我将
我是一名优秀的程序员,十分优秀!