在web开发中,我们通常需要使用定时器功能,使用setTimeout和setInterval函数。那么在ReactNative中,是否也提供了定时器的功能呢?我们还是先看看官网怎么说的。定时器是一个应用中非常重要的部分。React Native实现了和浏览器一致的定时器Timer。和web中的意思一样,前者表示延迟1000毫秒后执行 fn 方法 ,后者表示每隔1000毫秒执行 fn 方法。setImmediate则会在当前JavaScript执行块结束的时候执行,就在将要发送批量响应数据到原生之前。在React Native里,我们目前受到限制,因为我们只有一个JavaScript执行线程。不过你可以用InteractionManager来确保在执行繁重工作之前所有的交互和动画都已经处理完毕。注意这有可能会延迟当前正在进行的动画。我们发现很多React Native应用发生致命错误(闪退)是与计时器有关。这可以规避许多难以排查的BUG。

React-Native之定时器Timer的实现代码

React-Native之定时器Timer的实现代码

React-Native之定时器Timer的实现代码