RN应用无法连接到开发服务器,浏览器可以

时间:2019-02-11 15:40:58

标签: react-native

我正在尝试从本机0.55.4更新到本机0.58.4。

我面临的问题是我的应用程序无法连接到Metro Bundle。 尽管adb反向,仿真器以及物理设备都无法连接到它。 我可以在设备的Chrome浏览器中很好地打开该URL,但该应用无法连接到它。

我已遵循变更日志中的更新通知,生成了以下package.json:

"dependencies": {
    "react": "16.6.3",
    "react-native": "0.58.4"
  },
  "devDependencies": {
    "babel-core": "7.0.0-bridge.0",
    "babel-jest": "24.1.0",
    "jest": "24.1.0",
    "metro-react-native-babel-preset": "0.51.1",
    "react-test-renderer": "16.6.3"
  },
  "jest": {
    "preset": "react-native"
  }

我遗漏了不重要的包裹。

我也将.babelrc文件更改为:

{
  "presets": ["module:metro-react-native-babel-preset"]
}

环境信息:

React Native Environment Info:
    System:
      OS: Windows 10
      CPU: (8) x64 Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz
      Memory: 3.21 GB / 15.93 GB
    Binaries:
      Yarn: 1.7.0 - C:\Program Files (x86)\Yarn\bin\yarn.CMD
      npm: 6.1.0 - C:\Program Files\nodejs\npm.CMD
    IDEs:
      Android Studio: Version  3.3.0.0 AI-182.5107.16.33.5264788

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

仅升级package.json不足以升级react-native应用程序。在升级过程完成之前,必须对其他文件进行其他更改。

一个好的开始是查看0.55.40.58.4中的代码之间的差异。您可以通过查看rn-diff-purge上的git diff来找到这些更改。如果您看下面的链接,您会发现除了package.json中的更改之外,还有很多更改。

https://github.com/pvinis/rn-diff-purge/compare/version/0.55.4...version/0.58.4

其中一些更改将是多余的,实际上可能不会影响应用程序的运行,其他更改将非常重要,必须执行。不幸的是,git diff并没有告诉我们我们必须做些什么,而我们可能错过了它,只是告诉我们区别。我的建议是进行建议的所有更改。

先查看应用程序的原始版本,然后再移动到原始版本,这也可能会有所帮助。您可以使用以下代码在特定版本中创建本机应用程序:

react-native init newproject --version react-native@0.55.4

如果查看官方升级文档,它会显示:

  

某些升级需要手动操作,例如0.28至0.29或0.56至   0.57。升级时一定要检查release notes,以便您可以识别特定项目可能需要的任何手动更改。

https://facebook.github.io/react-native/docs/upgrading#manual-upgrades

因此,有必要查看发行说明中必须进行的任何特定更改。

最坏的情况是,使用0.58.4创建一个新的工作应用,复制您的JavaScript代码,安装并链接您的依赖项,然后从那里开始。

祝您好运,这可能会有些棘手,但耐心等待,您会到达那里。

相关问题