我遇到了问题,其中setTimeout
包裹的函数立即被调用。而不是我指定的5000毫秒,它需要在50毫秒到500毫秒之间随机。我测试了setInterval
,奇怪的是第一次执行几乎是立即执行,但后续调用是正确的。我在Android模拟器上测试。 POC存储库:here
重现的步骤:
react-native init TimerBug
console.time('test 1'); setTimeout(() => console.timeEnd('test 1'), 5000);
方法的顶部添加render
。(exact position for lazy here)
任何人都可以帮助我吗?
答案 0 :(得分:1)
这是React Native中的一个已知错误,它已暂时在问题跟踪器中弹出一段时间。问题仅在调试模式下发生,因为在这种情况下,您的代码在不同的JavaScript引擎(Chrome的V8而不是JavaScriptCore)上执行。看到这些问题:
显然,与React Native 0.44.0(2017年5月发布)一样,问题仍然存在。 Here你可以找到一个有趣的解决方案。