当我初始化一个新项目,然后启动Xcode模拟器时,得到以下消息:
React-Native版本不匹配 Javascript版本0.50.1 本机版本:0.50.0 确保您已经重新构建了本机代码. ...
有谁知道这是怎么回事能帮帮我吗?
当我初始化一个新项目,然后启动Xcode模拟器时,得到以下消息:
React-Native版本不匹配 Javascript版本0.50.1 本机版本:0.50.0 确保您已经重新构建了本机代码. ...
有谁知道这是怎么回事能帮帮我吗?
当前回答
如果你用create-react-native-app创建react-native-app。你应该有一个app.json (expo)。还有一个包裹。Json文件,检查世博版本是否匹配并相应更改。例如,在我的案例中,问题是在app.json文件中,我有一个25.0.0版本的expo sdkVersion属性,我将其更改为23.0.0,一切正常工作。
package.json:
"dependencies": {
"expo": "^23.0.4",
"react": "16.0.0",
"react-native": "^0.50.4"
}
app.json:
{
"expo": {
"sdkVersion": "23.0.0" // before was 25.0.0
}
}
其他回答
对于那些无法通过关闭和重建来修复的Android开发人员,在模拟器/设备上手动卸载应用程序。
如果你通过Expo运行React Native应用程序,升级React Native很容易导致这个错误(如https://github.com/expo/expo/issues/923所述)。
如果这是你的情况,你的选择是:
Bump Expo(在你的package.json中列出)到一个与你的React Native版本兼容的版本(如果有的话,可能不是这样——根据链接的问题判断,我认为Expo支持落后于React Native版本)。 放弃你的更改,删除并重新安装你的Node模块,从Expo中弹出,然后(在检查你仍然可以运行你的应用程序后弹出)再次尝试升级。
我们所做的修正是确保在构建之前设置ANDROID_HOME和PATH变量。
首先,运行以下两个命令,然后为设备构建应用程序。
export ANDROID_HOME=/Users/username/MyFiles/applications/androidsdk
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
我从stackoverflow找到了另一个问题的答案,我喜欢把它放在这里。
第一步:我改变了expo在package中的值。Json文件到最新支持的版本,根据博览会文档(访问这里)。
第二步:我将app.json文件中的sdkVersion的值更改为package.json中expo的值。(与上一步数量相等)。
如果sdkVersion在你的app.json文件中不存在,请像这样添加。 :“sdkVersion xx.x。X”(与package.json中的expo版本相同)
第三步:我在包中改变了react-native的值。根据expo文档(请访问这里),将json文件更改为与React Native Version相同的值。
这对我来说很管用:
react-native start --reset-cache