升级React Native和依赖项时的不变违例

时间:2017-10-05 22:52:24

标签: javascript reactjs react-native

自从我更新了我的React Native项目依赖项以来,已经有一段时间了,我试图让所有内容都更新。我从react-native@0.42.0react@15.4.1开始。我使用npm install --save react-native@x.x.x更新了所有内容。

现在我已经更新了所有内容,但我无法让我的应用运行。我收到以下错误:

  

不变违规:元素类型无效:期望强(对于内置组件)或类/函数(对于复合组件)但得到:对象

作为调试的最后努力,我已经完成了以下工作:

注释掉所有应用程序代码,因此唯一运行的代码在index.android.js中:

import { AppRegistry } from 'react-native'
import CRV from './app'
AppRegistry.registerComponent('CRV', () => CRV)

修改了我的packages.json文件,以便只响应和本机正在加载:

"dependencies": {
  "react": "^16.0.0-beta.5",
  "react-native": "^0.49.1"
}

当我运行我的应用时,我得到了红色屏幕:

enter image description here

不幸的是,我不知道如何继续这一点。也许我已经评论过多,并且在尝试隔离问题之前还需要运行一些其他代码?

1 个答案:

答案 0 :(得分:0)

不幸的是,答案并不是很吸引人。

幸运的是,我正在分支机构完成所有工作。我最初使用react-native upgrade,这就是导致我失败的原因。

我终于摧毁了那个分支,让我的环境恢复到0.42.0。然后我使用了新的react-native-git-upgradedocs)。这仍然是一个非常繁琐的过程,但是一旦我更新了我的所有其他依赖项并修复了与升级中的需求相关的代码中的问题,它就起作用了。