跳到主要内容

使用框架构建 React Native 应用

·阅读时长5分钟
Nicola Corti
Nicola Corti
Meta 软件工程师

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

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

在这篇博客文章中,我们希望详细介绍它们是什么以及它们作为 React Native 开发人员开始新项目对您意味着什么。

什么是 React Native 框架?

如果您一直在构建生产应用程序,您可能知道迟早会遇到一系列常见问题。

在构建任何 Web 或原生应用程序时,您可能希望用户能够浏览不同的屏幕、获取数据并存储用户状态。但对于原生应用程序,还有更多需要处理:您需要工具来在 React Native 版本之间升级您的原生代码,管理所有依赖项的兼容版本,并处理原生构建工具。

如果没有合适的工具,将一个应用程序从想法变为生产需要一个村庄的力量。

我们希望您专注于为用户编写精美的应用程序和功能,而不是一遍又一遍地解决这些常见问题。

这就是为什么我们相信您体验 React Native 的最佳方式是通过一个框架,该框架提供了一个工具箱,其中包含您构建生产就绪应用程序所需的所有必要工具。

我们发现,**您要么在使用一个框架,要么在构建自己的框架**。

构建自己的框架,通过为路由、导航、部署等创建自己的解决方案并没有错。像 Meta 和 Microsoft 这样的大公司在内部构建自己的框架,以便深入集成到他们的棕地应用程序中。但我们相信,大多数人使用现有框架会更好。

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

截至目前,React Native 唯一推荐的社区框架是 Expo。Expo 的团队从 React Native 早期就开始投资 React Native 生态系统,截至目前,我们认为 Expo 提供的开发者体验是同类最佳的。

注意

Expo 框架将保持免费和开源,而 Expo 应用服务 (EAS) 是一项可选的付费服务。

如果您最近没有使用过 Expo,请务必不要错过 Kadi @ Expo 的这次演讲,她展示了 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 的增长和创新。