将本机升级到最新版本

per*_*snk 13 react-native

我有一个在本地0.49.3上运行的应用程序,我想升级到v0.57.4的最新版本。

我应该逐步更新吗?例如0.49-> 0.50-> 0.51等还是可以将其更新到最新版本?

您是否建议使用react-native-git-upgradern-diff

Edd*_*die 9

我的建议是升级到最新版本。无论如何都会有足够的依赖性问题,因此您最好只处理一次。

从React Native升级页面(https://facebook.github.io/react-native/docs/upgrading

您可以运行:

npm install -g react-native-git-upgrade

react-native-git-upgrade

更新:我以前从未遇到过升级问题,但是最近在一个项目中,我们从旧版本的React Native 0.44.3升级到了新版本(先升级到0.57.8,再升级到0.55.4,然后达到0.58.3(同时又努力保持稳定性),并发现它并不总是像运行这些命令那样容易。请注意,这可能是一个漫长而乏味的过程,尤其是如果您没有定期升级并且升级之间的间隔很长的话。在这个例子中,是18个月。

首先,升级过程本身(反应本机升级,现在改为react-native-git-upgrade)本身已经发生了变化。因此,如果您使用的是一年或更旧的版本,则可能需要手动进行一些差异。有些是在运行react-native-git-upgrade命令后拼写的,有些则不是。令我惊讶的是,Stack Overflow上的人员经历了看似无辜的升级过程中相同的未记录的循环问题。我没想到这一点。我会同意Facebook在6个月内不添加任何功能,并在继续之前简化升级过程。

其次,确保您的React Native版本使用正确的依赖项。升级工具的更高版本(react-native-git-upgrade)试图解决这个问题,但是请在https://github.com/react-native-community/react-native-releases/blob/master/CHANGELOG中仔细检查.md以查看您要升级到的RN版本是否需要特定的依赖性。有些会这样做,而有些则不会。

接下来,图书馆的需求是真实的,这取决于您的项目规模。在我们的案例中,0.44.3版本中正在使用的几个模块现在已被弃用或不再维护,甚至与更高版本的RN的工作方式不同。在开始此过程时,我认为这还不够。这导致几个实例的代码重写只是为了升级!kes!

同样,就像某些版本的React Native需要特定版本的依赖关系一样,其他模块也需要特定版本的某些依赖关系。更糟糕的是,有时这些是各种库的不兼容和冲突版本。节省一些时间并撰写一两个用户案例来解决这个问题。浏览您正在使用的每个模块,并查看其GitHub页面上是否有任何兼容性声明。一些自述文件会告诉您将其模块的某些版本与React Native的某些版本一起使用。其他人则不会,您稍后可能会发现有要求。但是即使经历了这个过程并预见到了问题,您稍后也会感谢自己。

一旦您保持最新状态并稳定下来,就可以考虑定期进行升级,以最大程度地减少我刚刚经历的升级梦night。

  • 这是一个很好的答案!我想补充一点,https://github.com/pvinis/rn-diff-purge 也很有用,因为它可以向您显示每个版本之间的具体更改。由于我遇到的问题,我不再使用“react-native-git-upgrade”进行升级,而是手动进行升级,正如您所说,我也尝试经常这样做。 (2认同)
  • react-native-git-upgrade已正式死亡。使用rn-diff-purge达到RN 0.59.x,然后使用react-native升级。https://github.com/facebook/react-native/issues/23866#issuecomment-472086814 (2认同)

Ash*_*win 6

  1. 你需要@react-native-community/cli升级到最新版本的 react-native,遗憾的是没有在任何地方提及。

    npm install -g @react-native-community/cli

  2. 安装 react-native-git-upgrade

    npm install -g react-native-git-upgrade

  3. 现在转到您的项目。

    cd your-react-native-project

  4. 现在您可以运行升级命令。

    反应原生升级


Har*_*wal 5

只需更改要升级其本机版本的项目的路径,然后运行以下命令:

反应性升级

运行此命令后,您将看到一些问题。键入n以放弃对该文件的更改,或者如果要修改该文件,则键入y。它将自动为您的项目安装最新版本的react-native。有关更多信息,访问:https : //facebook.github.io/react-native/docs/upgrading

要么

您可以通过以下简单步骤升级本地版本:

1-只需转到您项目的package.json文件

2-之后,寻找这些行

"dependencies": {
    "react-native": "0.57.8",
 }
Run Code Online (Sandbox Code Playgroud)

3-将本机版本更改为要升级到的任何版本"dependencies"

4-在运行npm install和反应后,本机版本将为您的项目升级。


mau*_*iya 5

我建议使用这个工具(升级助手),它允许您比较当前的 React Native 版本和最新的 React Native 版本。

此外,经常升级 React-Native 是有好处的,这样可以保持最新版本并简化升级过程。

https://react-native-community.github.io/upgrade-helper/