我正在使用 Motorcycle 创建一个小型应用程序。我需要在每个 requestAnimationFrame 上调用一个函数。由于它是一个副作用,我知道它必须在一个“有效”的组件中完成。但是,大多数 js 不提供源,例如它提供periodic()
和now()
来制作 requestAnimationFrame 流。如何在我的应用程序中实现这样的功能?
问问题
62 次
1 回答
2
可以在您的应用程序中使用诸如most-request-animation-frame 之类的库来执行此操作,该库已为 @most/core 准备好,因此 100% 准备好与 Motorcycle 一起使用。它提供了一个函数,该函数requestAnimationFrames(): Stream<Time>
将返回一个以递归方式发出当前时间的流requestAnimationFrame
。
仅供参考,“当前时间”是使用Scheduler
流运行的时间来确定的,而不是在回调中可能收到的时间requestAnimationFrame((timestamp) => { ... })
。这样,时间作为依赖注入并且是单调的。
于 2017-09-21T18:05:08.407 回答