我正在尝试升级到react-native(react-native-0.26.2)的最新版本,所以我可以使用react-native-flux-router。
chrome控制台仅显示默认错误消息。
这是我的package.json文件
"dependencies": {
"@remobile/react-native-splashscreen": "^1.0.3",
"firebase": "^3.0.3",
"jwt-decode": "^2.0.1",
"moment": "^2.12.0",
"node-uuid": "^1.4.7",
"q": "^1.4.1",
"react": "15.0.2",
"react-native": "0.26.2",
"react-native-action-button": "^1.1.4",
"react-native-android-statusbar": "^0.1.2",
"react-native-animatable": "^0.6.0",
"react-native-button": "^1.5.0",
"react-native-device-info": "^0.9.3",
"react-native-drawer": "^2.2.3",
"react-native-file-uploader": "0.0.2",
"react-native-gifted-spinner": "0.0.4",
"react-native-image-picker": "^0.18.17",
"react-native-keep-screen-on": "^1.0.3",
"react-native-maps": "^0.4.2",
"react-native-modalbox": "^1.3.3",
"react-native-orientation": "^1.16.0",
"react-native-router-flux": "^3.26.5",
"react-native-simple-store": "^1.0.1",
"react-native-vector-icons": "^2.0.2",
"react-timer-mixin": "^0.13.3",
"underscore": "^1.8.3"
},
"devDependencies": {
"eslint": "2.10.2",
"eslint-plugin-react": "5.1.1",
"eslint-plugin-react-native": "1.1.0-beta"
}
这是adb logcat的输出
升级步骤: 注*为了使当前设置正常工作
"反应原生":" 0.25.1", "反应":" 0.14.5", " react-native-router-flux":" 3.22.23"
我必须安装此特定版本的
"断言":" 1.3.0"
。原因是我得到了一个缓冲区异常,在搜索之后这就是我找到的solution to unknown module buffer
当我尝试升级时,我得到了最新版本的react-native并做出反应。然后,在看到react-native需要的警告消息
后,我降级了反应版本"反应":" 15.0.2"
然后我删除了断言包。我尝试了从卸载应用程序和重新编译的所有内容,我尝试重新启动计算机和手机。我在搜索中找到的唯一内容是search result
所以我甚至在全球范围内安装了最新版本的babel,但不确定它能做些什么。然后我还确保在所有视图中的构造函数中都有一些东西。
export default class Home extends Component {
constructor(props) {
super(props);
this.state = {
foo: 'bar'
}
}
我不确定下一步该做什么,因为控制台中没有有用的错误。
答案 0 :(得分:5)
使用React Native 0.26及更高版本,React本身不再与React Native捆绑在一起。此错误似乎是由您{或第三方组件尝试使用propType
的{{1}}定义引起的。
您需要更新有问题的组件或更改自己的组件,直接从PropTypes.object
包中访问PropTypes
,如下所示:
react