如何进行RreactNative的版本升级

官方提供的升级工具: https://react-native-community.github.io/upgrade-helper/?from=0.58.4&to=0.62.0

需要翻墙访问,也有离线版本。

打开网页就可以看到开头的提示信息:选择要升级的目标版本。

查询本地RN版本指令:yarn react-native --version

选择好要升级的版本后,点击下面的『show…』按钮,就可以看到要升级的对比文件了。

只要耐心修改就行了,我是分开修改,先修改iOS相关文件,等到iOS能成功运行后再去修改android相关的文件.


iOS工程修改时,我觉得需要注意的地方:

  1. ios/RnDiffApp.xcworkspace/contents.xcworkspacedata 是使用pod install之后生成.xcworkspace后才会自动生成的,所以如果你的工程项目内没有这个文件,等执行pod install之后再回来修改(实际上自动生成后的文件内容和对比文件是一致的)。

  2. ios/RnDiffApp.xcodeproj/project.pbxproj 不需要修改,至少我升级的时候是不需要的,它在你项目运行的时候会自动修改,官方给出了提示:https://github.com/react-native-community/upgrade-support/issues/14

  3. 诸如 ios/RnDiffApp-tvOS/Info.plist、ios/RnDiffAppTests/RnDiffAppTests.m这些文件实际上也可以不修改,当然前提是你没有使用到这些文件,同理,在pod file里面也可以注释掉target是RnDiffApp-tvOS的内容

  4. 不需要安装flipper相关的第三方库(pod file 里面可以注释掉相关内容),appdelega.m里面flipper相关的代码也可以不添加。当然,你想要加也是可以的,但我没加。

  5. 如果是0.60.0之前的版本升级到0.60以上的版本,当项目安装了很多依赖,也就是package.json里面有很多dependencies,那么可以先将这些依赖删除掉( yarn remove xxx),在删除这些依赖后也需要运行pod instal删除iOS工程项目的关联,也可以手动移出这些关联;package.json只添加对比文件中需要你添加的依赖,在项目成功安装后,在把依赖一个个添加回去。

  6. 如果出现类似 :‘React/RCTViewManager.h’ file not found的错误提示,可以通过rm -rf node_modules && rm package-lock.json 删除依赖文件,在xcode里面执行product>clean build folder,关闭xcode后运行npm install && react-native link重新安装依赖。

以上是我升级时候的操作,仅供参考,可能一些地方实际上不需要像我这样操作,比如第5点,这个就自己取舍。


修改android文件时,需要注意的地方:

  1. 同iOS一样,android/app/src/debug/java/com/rndiffapp/ReactNativeFlipper.java 文件可以不用添加

  2. 如果在修改的时候又添加了第三方,那么需要在iOS工程目录里面执行一遍: pod install

安卓就没有其他需要注意的,该替换的替换、该删除的删除、该修改的就修改,全部按照对比文件操作就行了。

以上全部就是升级时我觉得需要注意的地方,主要就是耐心,慢慢搞。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值