当我初始化一个新项目,然后启动Xcode模拟器时,得到以下消息:

React-Native版本不匹配 Javascript版本0.50.1 本机版本:0.50.0 确保您已经重新构建了本机代码. ...

有谁知道这是怎么回事能帮帮我吗?


当前回答

Opene管理扫描/ android / app / build.gradle

试一试:

编译("com.facebook.react:react-native:0.51.0") {force = true}

而不是 编译"com.facebook.react:react-native:0.51.0" {force = true}

裁判:链接

其他回答

我有这个问题很长一段时间了,上面的解决方案都没用。我在一个create-react-native-app项目中升级react native,直到我发现不是所有版本的Expo都支持最新的react native。

在文档中找到了这个页面的链接,其中显示了官方支持的React Native, React和Expo的版本组合:

来源:https://github.com/react-community/create-react-native-app/blob/master/VERSIONS.md

编辑app.json和包。Json文件来匹配相应的版本,运行NPM install可以让一切恢复正常。

在你的android应用级别的gradle文件中,在依赖项中强制react原生版本。

compile ("com.facebook.react:react-native:0.52.0") { force = true }

为我工作

博览会用户-确保您的app.json sdk版本和包。Json的博览会版本是(可能相等)彼此兼容。

安装一个新的模拟器和关闭所有终端,只在我从Android Studio运行时才适用。现在已经不管用了。

有点违反直觉,但我注意到,当我从Android Studio运行时,地铁捆绑终端没有启动。

所以我从终端执行npx react-native run-android(这没有工作,但它确实启动地铁捆绑器),然后我从Android Studio运行该应用程序,它工作!

这个答案发表于2020年, 在3个步骤中修复此错误:

第一步:我改变了expo在package中的值。Json文件到最新支持的版本,根据博览会文档(访问这里)。

第二步:我将app.json文件中的sdkVersion的值更改为package.json中expo的值。(与上一步数量相等)。

第三步:我在包中改变了react-native的值。根据expo文档(请访问这里),将json文件更改为与React Native Version相同的值。

现在你可以出发了。

使用NPM install来安装指定版本的依赖项,然后NPM开始运行项目