为何Expo成为React Native官方推荐框架?

在React Conf上,我们更新了关于构建React Native应用的最佳工具指南:一个React Native框架------一个工具箱,包含所有必要的API,让你可以构建生产就绪的应用。

现在,使用React Native框架(如Expo)是创建新应用的推荐方法。

在这篇博文中,我们将详细介绍它们是什么,以及它们对于开始新项目的React Native开发者来说意味着什么。

什么是React Native框架?

如果你一直在构建生产应用,你可能知道迟早需要解决一系列常见问题。

无论是在Web还是原生平台上构建任何应用,你可能都希望用户能够在不同的屏幕之间导航、获取数据并存储用户状态。但原生应用还有更多需要处理的问题:你需要工具来在React Native版本之间升级你的原生代码,管理所有依赖项的兼容版本,以及处理原生构建工具。

没有合适的工具,把一个应用从想法变为产品就像是一场孤独的旅行。

我们希望你能专注于为你的用户编写漂亮的应用和功能,而不是一遍又一遍地解决那些常见问题。

这就是我们认为通过提供一个包含所有必要工具的工具箱来体验React Native的最佳方式,这些工具可以让你构建生产就绪的应用。

我们发现,你要么使用一个框架,要么自己构建一个框架。

构建自己的框架,为自己打造路由、导航、部署等解决方案,这并没有错。像Meta和微软这样的大公司会在内部构建自己的框架,以便深入集成到他们的遗留应用中。但我们相信,大多数人最好还是使用现有的框架。

如果你一直在Web上使用React,你可能对生产级React框架的类似概念比较熟悉。

截至今天,React Native唯一推荐的社区框架是Expo。自React Native早期开始,Expo团队就一直在投资React Native生态系统,而今天,我们认为Expo提供的开发者体验是同类中最优的。

**注意:**Expo框架本身是免费且开源的,而Expo Application Services(EAS)是一个可选的付费服务。

如果你最近没有使用过Expo,请务必不要错过Expo的Kadi在这次演讲中展示的2024年你可以用Expo做什么。

我们还更新了网站上的"入门"页面,以反映这一推荐。

框架将如何影响你?

  • 如果你已经在使用像Expo这样的推荐框架,那么你已经准备好了!

  • 如果你想将现有应用迁移到Expo,你可以在Expo的官方网站上找到迁移指南。Expo提供了许多好处,比如更容易地升级React Native版本、更好的开发者体验等等。

  • 但是,如果你不能或不想迁移到Expo,那也没关系。不使用官方框架的React Native将继续得到支持。你一直在使用的工具,如React Native Community CLI、模板和升级助手,将继续正常工作。

  • react-native init命令已经从核心中移出,现在可以通过以下方式访问:

    npx @react-native-community/cli@latest init

在GitHub上的位置是react-native-community/cli。

  • 如果你是React Native库开发者,我们收集了一份关于应使用哪些API的建议列表。更多详情请参阅RFC(请求评论稿)。

进一步阅读

如果你对这项决策背后的原因感兴趣,我们邀请你阅读RFC0759:《React Native框架》。这份RFC是React Native生态系统中的不同合作伙伴和参与者经过数月努力、无数讨论和头脑风暴的结果。

虽然目前Expo是唯一推荐的框架,但RFC还包含了如何成为推荐框架的指南,因为我们希望在这个领域看到更多的竞争和创新。

此外,你应该观看在App.js 2024上进行的useFrameworks()演讲,我们在其中简短地介绍了这份RFC和必要的变更。

我们相信,通过明确React Native核心和框架各自的职责,我们可以促进一个更健康的生态系统,并推动React Native的增长和创新。

相关推荐
活宝小娜1 小时前
vue不刷新浏览器更新页面的方法
前端·javascript·vue.js
程序视点1 小时前
【Vue3新工具】Pinia.js:提升开发效率,更轻量、更高效的状态管理方案!
前端·javascript·vue.js·typescript·vue·ecmascript
coldriversnow1 小时前
在Vue中,vue document.onkeydown 无效
前端·javascript·vue.js
我开心就好o1 小时前
uniapp点左上角返回键, 重复来回跳转的问题 解决方案
前端·javascript·uni-app
开心工作室_kaic2 小时前
ssm161基于web的资源共享平台的共享与开发+jsp(论文+源码)_kaic
java·开发语言·前端
刚刚好ā2 小时前
js作用域超全介绍--全局作用域、局部作用、块级作用域
前端·javascript·vue.js·vue
沉默璇年3 小时前
react中useMemo的使用场景
前端·react.js·前端框架
yqcoder4 小时前
reactflow 中 useNodesState 模块作用
开发语言·前端·javascript
2401_882727574 小时前
BY组态-低代码web可视化组件
前端·后端·物联网·低代码·数学建模·前端框架
SoaringHeart4 小时前
Flutter进阶:基于 MLKit 的 OCR 文字识别
前端·flutter