我正在使用Firebase和React Native。 Firebase向我显示了一个计时器警告,如屏幕截图所示。
我在React Native troubleshooting指南中阅读了以下注释。
React Native为WebSockets实现了一个polyfill。这些polyfills是 初始化为您包含的react-native模块的一部分 你的应用程序通过导入React从'react'。如果你加载 另一个需要WebSockets的模块,比如Firebase,一定要确保 反应原生后加载/需要它:
import React from 'react';
import Firebase from 'firebase';
我尝试在Firebase之前导入React。但是,我仍然不断收到这些计时器警告。该应用程序工作正常。我会定期收到多个警告。任何帮助将不胜感激。
我正在使用最新的React Native,警告来自Android模拟器。
答案 0 :(得分:4)
要对此进行排序,所有需要做的就是增加变量MAX_TIMER_DURATION_MS的值。以下是步骤:
转到node_modules / react-native / Libraries / Core / Timer / JSTimers.js
查找变量MAX_TIMER_DURATION_MS
将firebase所需的60 * 1000更改为10000 * 1000
保存更改并重新构建您的应用。
答案 1 :(得分:1)
你也可以通过包装器切换到本机SDK,它通常更高效,因为它本身就是如此,所以没有计时器警告,而且你不仅可以访问auth和数据库模块。
一个这样的包装器是react-native-firebase,它目前支持10个以上的firebase模块:
免责声明:以上作者。
答案 2 :(得分:0)
将两个变量的值都更改为我的工作。
const FRAME_DURATION = 100000/60;
const MAX_TIMER_DURATION_MS = 60 * 100000;
答案 3 :(得分:0)
它也对我有用。
转到 node_modules/react-native/Libraries/Core/Timer/JSTimers.js
查找变量 MAX_TIMER_DURATION_MS
将 60 * 1000 更改为 10000 * 1000 ,firebase 需要
保存更改并重新构建您的应用。