使用框架构建React Native应用程序的最佳实践

在React Conf上,我们更新了关于开始构建React Native应用程序的最佳工具的指导:一个React Native框架------一个包含所有必要API的工具箱,让您能够构建生产就绪的应用程序。

现在推荐使用React Native框架(如Expo)来创建新应用程序。

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

什么是React Native框架?

如果您一直在构建生产应用程序,您可能会知道,迟早您需要解决一组常见问题。

在Web或原生上构建任何应用程序时,您可能希望用户能够在不同屏幕之间导航,获取数据并存储用户状态。

但对于原生应用程序,需要处理的问题更多:您需要工具在React Native版本之间升级您的原生代码,管理所有依赖项的兼容版本,并处理原生构建工具。

没有合适的工具,将应用程序从想法变为生产是一项艰巨的任务。我们希望您专注于为用户编写美丽的应用程序和功能,而不是一遍又一遍地解决这些常见问题。

这就是为什么我们相信,通过提供所需工具的框架体验React Native是最好的方式。

我们发现,您要么使用框架,要么构建自己的框架。构建自己的框架没有问题,通过为路由、导航、部署等制定自己的解决方案。

像Meta和Microsoft这样的大公司会在内部构建自己的框架,以深入集成到他们的棕地应用程序中。

但我们相信,大多数人使用现有框架会更好。如果您一直在Web上使用React,您可能熟悉生产级React框架的类似概念。

到目前为止,唯一推荐的社区框架是Expo。Expo团队自React Native早期以来一直在投资React Native生态系统,到今天,我们认为Expo提供的开发者体验是最好的。

框架将如何影响您?

如果您已经在使用推荐的框架(如Expo),那么您已经可以开始了!

如果您想将现有应用程序迁移到Expo,可以在官方Expo网站上找到说明。Expo提供了许多好处,例如更容易升级React Native版本,更好的开发者体验等等。

但是,如果您无法或不想迁移到Expo,那也没关系。继续使用没有官方框架的React Native将继续得到支持。

您一直使用的工具,如React Native社区CLI、模板和升级助手将继续正常工作。react-native init命令已从核心中移除,现在可以通过以下方式访问:npx @react-native-community/cli@latest init

如果您是React Native库的开发者,我们收集了一些关于使用哪些API的建议。在RFC中阅读更多内容。

进一步阅读

如果您有兴趣了解此决策背后的原因,我们邀请您阅读RFC0759:React Native框架。

这个RFC是几个月努力的结果,涉及React Native生态系统中不同合作伙伴和参与者的无数次讨论和头脑风暴。

虽然Expo今天是唯一推荐的框架,但RFC还包含了如何成为推荐框架的指导方针,因为我们希望在这一领域看到更多的竞争和创新。此外,您还应该查看在App.js 2024上的useFrameworks()演讲,我们在其中以简短的形式介绍了这个RFC和必要的更改。

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

原文链接

相关推荐
HYCS1 小时前
用pixi.js实现fabric.js(六):从线性代数的角度理解编辑器交互
前端·javascript·canvas
you45801 小时前
学成在线--day02 CMS前端开发(含Vue基础知识得回顾)
前端·javascript·vue.js
想吃火锅10051 小时前
【leetcode】1.两数之和js版
javascript·算法·leetcode
xiaofeichaichai1 小时前
虚拟 DOM
前端·javascript·vue.js
初一初十2 小时前
vue3实现的纯前端护肤品商城网站
前端·javascript·vue.js·前端框架
ANnianStriver3 小时前
PetLumina 07 — 宠物管理升级与 JavaScript 大数精度修复
开发语言·javascript·ai编程·宠物
初一初十3 小时前
vue3茶叶商城网站vue网页vuejs前端
前端·javascript·vue.js·vscode·前端框架
kyriewen3 小时前
前端性能优化:LCP 从 4s 到 0.9s 的 5 个核心手段(附配置代码)
前端·javascript·性能优化
xiaofeichaichai3 小时前
Proxy与Reflect
前端·javascript
rm1094 小时前
【js逆向】webpack自吐算法记录
javascript