运行react-native run-android
后,我在仿真器(经测试的Genymotion和谷歌股票仿真器)和物理设备(三星S4)上出现以下错误:
错误输入:
java.util.concurrent.ExcecutionException: java.lang.RuntimeException: SyntaxError: Attempted to redefine property 'key'. (http://192.168.50.37:8081/index.android.bundle?platform=android&dev=true&hot=false:72450)
java.util.concurrent.ExecutionException
)但是那里的解决方案对我没有帮助,即adb reverse tcp:8081 tcp:8081
。Debug server host & port for device
更改为0.0.0.0:8081
而不是MY_IP:8081
,其中MY_IP
是我的电脑的IP。我正在运行反应原生0.22.2
答案 0 :(得分:17)
问题是:key
在某个视图中定义了两次,例如
<View key={index} key={other} ... />
所以只需删除其中一个key
属性。
找到解决方案的中间步骤:
首先,当在React Native菜单中按Start Chrome Debugging
时,应用程序将再次运行,但错误将显示在相应浏览器选项卡的控制台中。
然后它显示了更好的错误消息。
奇怪的是,iOS上没有出现此错误。
答案 1 :(得分:2)
我有相同的错误,但使用不同的关键字
在我的情况下,关键字在我的css 样式属性中声明了两次。
let styles = StyleSheet.create({
keyword:{},
keyword:{}
});
iOS上没有崩溃或警告,但导致Android崩溃。
答案 2 :(得分:1)
在v0.49上遇到相同的错误。花了很多时间,终于发现我的css声明中有重复:
&#xA;&#xA; logo:{&#xA;弯曲:3,&#XA;身高:120,&#xA; marginBottom:10,&#xA;},&#xA;&#xA; logo:{&#xA; ... styText,&#XA; marginTop:10&#xA;},&#xA;
&#xA;&#xA; 刚刚删除了第二个声明修复了错误。
&#xA;