這里主要記錄的是 react native(0.46.4)升級到(0.50.1)的情況寇甸。react-native react 之間對應版本關系鏈接地址 。
1.首先先安裝一下升級的工具(最新版本的)
npm install -g react-native-git-upgrade
2.然后執(zhí)行升級命令(最新版本刻蟹,版本號可不指明)
react-native-git-upgrade 0.50.1
順便說一下垮耳,不知道是不是我安裝了 yarn 的原因仿粹,在執(zhí)行這個命令后報了一個package-lock.json 的錯誤朵你,將這個文件刪掉就好了.
3.升級命令后的結果如圖
對于圖中出現的問題,如果有沖突的話家坎,解決一下沖突嘱能,沒有則不用理會。
4.驗證一下是否升級成功
react-native -v 查看當前版本
react-native upgrade 升級項目工程中的模板文件
從圖中結果可以看出虱疏,package.json 中的 react-native 的版本號與 node_modules 中的實際版本不一樣,這時只需要把package.json 中的原來的0.46.4 -> 0.50.1, react 對應也去改一下苏携。
5.再次執(zhí)行 react-native upgrade
(模板文件升級可省略)
模板文件:
.flowconfig
.gitignore
android/app/build.gradle
android/app/proguard-rules.pro
android/app/src/main/AndroidManifest.xml
android/app/src/main/res/../ic_launcher.png (啟動圖)
android/app/src/main/res/values/strings.xml
android/app/src/main/res/values/styles.xml
android/gradle/wrapper/gradle-wrapper.properties
android/settings.gradle
ios/工程名/AppDelegate.h 做瞪、ios/工程名/AppDelegate.m
ios/工程名/Base.lproj/LaunchScreen.xib
ios/工程名/Images.xcassets/AppIcon.appiconset/Contents.json
ios/工程名/Images.xcassets/Contents.json
ios/工程名/Info.plist
ios/工程名.xcodeproj/project.pbxproj
ios/工程名.xcodeproj/xcshareddata/xcschemes/工程名-tvOS.xcscheme
ios/工程名.xcodeproj/xcshareddata/xcschemes/工程名.xcscheme
ios/工程名Tests/Info.plist
對于模板文件,你可以選擇覆蓋(y)右冻,也可以保留(n)當前工程中的装蓬。到此,整個升級過程就完成了纱扭。
6.接下來驗證一下牍帚,工程是否能跑起來.
react-native run-ios
如果遇到`PropTypes`相關的問題,則可能是工程中用到的三方組件沒有更新乳蛾,可以選擇更新暗赶,也可以直接修改源碼 `import PropTypes from 'prop-types';`
react-native run-android 出現圖1錯誤,則按照圖2解決
將@override 注釋掉肃叶,或者將整個方法注釋掉蹂随,就好了(見圖2)。