反应原生应用程序在启动时在设备中崩溃。在模拟器中工作正常
Posted
技术标签:
【中文标题】反应原生应用程序在启动时在设备中崩溃。在模拟器中工作正常【英文标题】:React native application crashing in device at launch time. Working fine in simulater 【发布时间】:2018-02-21 17:47:47 【问题描述】:我创建了一个 react native 应用并在模拟器中成功运行。但它在设备启动时崩溃。
在下方添加了崩溃日志。请检查并帮助
Module AppRegistry 不是注册的可调用模块(调用runApplication) *** 由于未捕获的异常而终止应用程序'RCTFatalException:未处理的 JS 异常:未定义不是对象(评估'u.View.propTypes.style')',原因:'未处理的 JS 异常:未定义不是对象(评估' u.View.prop...,堆栈:
【问题讨论】:
你的命令是什么?只是react-native run-android
?
从react
导入 PropTypes 在React 16
中已被弃用,我会检查您在package.json
中使用的所有库是否存在其 github 页面上的任何问题。
这些是我正在使用的“依赖项”:“axios”:“^0.17.1”,“react”:“16.0.0-beta.5”,“react-native”:“ 0.49.3”、“react-native-collapsible”:“^0.9.0”、“react-native-country-picker-modal”:“^0.5.1”、“react-native-dash”:“0.0. 7",
“react-native-datepicker”:“^1.6.0”,“react-native-elements”:“^0.17.0”,“react-native-form-validator”:“^ 0.2.0”,“react-native-modal-dropdown”:“^0.5.0”,“react-native-router-flux”:“^4.0.0-beta.28”,“react-native-vector-图标”:“^4.4.2”,“react-navigation”:“^1.0.0-beta.13”,“react-redux”:“^5.0.6”,“redux”:“^3.7.2” ,“redux-logger”:“^3.0.6”,“redux-persist”:“^5.5.0”,“redux-thunk”:“^2.2.0”,“rm”:“^0.1.8” , "validate.js": "^0.12.0" ,
【参考方案1】:
这是由组件问题引起的,要修复它,请转到组件 .js 并进行此更改
import React,
PropTypes
from 'react';
到
import React from 'react';
import PropTypes from 'prop-types';
他们找到所有View.propTypes.style
并更改为ViewPropTypes.style
【讨论】:
你能给我找到这个文件的路径吗 - component.js ? 我的意思是您的应用程序中有一个组件存在 proptypes 问题,您需要对其进行调试才能找到,我建议使用View.propTypes.style
在您的应用程序中搜索 .js 文件以上是关于反应原生应用程序在启动时在设备中崩溃。在模拟器中工作正常的主要内容,如果未能解决你的问题,请参考以下文章
什么会导致 iPad(第 3 代)在启动时崩溃但在模拟器中工作?
如何让原生 WebSockets 在 Android 4.03 及更高版本中工作?
使用 LayoutAnimationController.shouldAnimateLayout 反应原生 Android 崩溃