reactjs - 为什么我应该/不应该升级到 react-native 0.60.0?
问题描述
目前,react-native 已经发布了 0.60.0 版本,它有一些重大变化,但他们在这个版本中添加了许多原生支持。
我目前正在从事我的 3 个项目。
第一个项目信息
- react: 16.0.0-beta.5 => 16.0.0-beta.5
- react-native: 0.49.0 => 0.49.0
这个项目包含许多第三方库,其中一些没有事件维护由业主。
第二个项目信息
- react
: 16.6.3 => 16.6.3 - react-native: 0.57.8 => 0.57.8
这个项目包含 12 个第三方库。
第三个项目信息
- react: 16.8.5 => 16.8.5
- react-native: 0.59.2 => 0.59.2
这个项目包含 7 个第三方库。
目前,所有三个项目都在调试模式下工作(没有尝试发布模式)。
现在我想从上述项目中知道我应该将哪个迁移到 react-native 0.60.0(为什么)?
如果我不迁移到 react-native 0.60.0 怎么办?
如果我迁移到 react-native 0.60.0 会有哪些挑战?
请指导我。
欢迎提出建议。
解决方案
这是特定的版本时间线,它将通过权衡取舍让您的应用程序受益。
v0.59.x
- Android 64 位,Play 商店发布的强制要求。
- 反应钩子
- 新的安卓javascript核心引擎,让你的应用更流畅。
v0.60.x
- 默认情况下 CocoaPods,更容易集成 3rd 方库,尤其是原生模块!
- AndroidX,这将破坏 3rd 方库(甚至是更新的库,需要时间来更新它)。
Webview
并被Geolocation
移除。- 爱马仕javascript引擎!启动速度更快。
建议
在我看来,尝试升级到 0.59 是最安全的最佳选择,因为没有它,您将无法在需要您的应用程序 64 位兼容的 Play 商店上发布您的应用程序。0.60可以等待,因为许多库(甚至是更新的库!)仍然不支持0.60。
- 显然0.49的项目是最难升级的,因为有时您需要分叉未维护的库并自己修复它。
- 0.57的项目升级到0.59会容易得多,因为结构主要没有太大变化。可以参考https://github.com/react-native-community/rn-diff-purge
推荐阅读
- c# - 如何正确进行急切加载?
- github - 每个分支的 github 易受攻击的依赖项
- python - 需要帮助并行化此代码
- google-bigquery - 数据工作室自动从报告中过滤掉空维度?
- postgresql - Airflow 1.9 - 任务卡在队列中
- phantomjs - 在 GitLab CI 中以无头模式运行时出现 PhantomJS 超时问题
- c++ - 是否可以在可变参数模板函数中扩展非可变参数?
- javascript - 如何创建一个在加载特定网页后自动启动的计时器
- haskell - 带有 HDBC 的 Haskell SQLError
- dns - 最适合表示 .App 域的应用程序的动词或名词子域?