2016-02-12 27 views
1

经常当我有Chrome浏览器开发工具开放,同时开发阵营原生的Android设备上,我得到以下错误:阵营本地没有得到有效的电话从JS错误回到

Did not get valid calls back from JS: [[],[],[],[],[]] 

callFunction 
ReactBridge.java:-2 

run 
CatalystInstanceImpl.java:203 

... 

任何想法什么是错? 我正在使用react-native v0.19和Nexus 5

+0

以下是可能产生该错误的所有情况:https://github.com/facebook/react-native/blob/master/ReactAndroid/src/main/jni/react/MethodCall.cpp#L23-L50 –

+0

项目结构有所变化,所以相关文件现在位于:https://github.com/facebook/react-native/blob/master/ReactCommon/cxxreact/MethodCall.cpp(但是,这可能是一个好主意只需在repo中搜索该错误字符串,以防文件再次移动)。 – Tomty

回答

0

使用Chrome开发工具进行调试时,此错误不应再显示为React Native 0.23。问题是调试器在无法处理请求时向应用程序返回“伪造值”。请参阅this承诺修复。

但是,使用Nuclide进行调试时,有时会出现此错误。 Here是我就这个问题打开的问题。

无论哪种方式,显示此​​错误的应用程序只是一个症状,其中真正的问题是从应用程序到调试器(作为JS引擎的角色)的请求无法处理。

我遇到的一个具体原因是没有设置Batched Bridge,因为调试器无法加载JS应用程序包(在我的情况下,这是由于它尝试获取包的端口问题引起的) 。但是,这可能会发生很多其他原因。