跳到主要内容

使用框架构建 React Native 应用

·4 分钟阅读
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 Application Services (EAS) 是一项可选的付费服务。

如果您最近没有使用过 Expo,请确保不要错过 来自 Expo 的 Kadi 的这次演讲,她在其中展示了 2024 年您可以使用 Expo 做什么。

我们还更新了网站上的 入门页面,以反映此建议。

框架将如何影响您?

如果您已经在使用推荐的框架(例如 Expo),那么您已经准备就绪!

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

但是,如果您不能或不想迁移到 Expo,那也没关系。继续支持在没有官方框架的情况下使用 React Native。您一直在使用的工具(例如 React Native Community CLI、Template 和 Upgrade Helper)将继续像往常一样工作。

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 Core 和框架各自的责任,我们可以促进更健康的生态系统,并推动 React Native 的增长和创新。