跳到主要内容

使用框架构建 React Native 应用

· 阅读需 5 分钟
Nicola Corti
Nicola Corti
Software Engineer @ Meta

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

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

在这篇博文中,我们将详细介绍它们是什么,以及它们对你作为React Native开发者启动新项目意味着什么。

什么是 React Native 框架?

如果你一直在构建生产环境应用,你可能知道早晚都需要解决一组常见问题。

构建任何网络或原生应用时,你都会希望用户能够在不同的屏幕间导航、获取数据并存储用户状态。但对于原生应用来说,有更多需要处理的内容:你需要工具来升级不同 React Native 版本间的原生代码,管理所有依赖的兼容版本,并处理原生构建工具。

没有合适的工具,让一个应用从想法变成生产环境需要整个团队的力量。

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

这就是为什么我们认为,体验 React Native 的最佳方式是通过提供完整工具箱的框架,帮助你构建生产就绪的应用。

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

自己构建框架、制定自己的路由、导航、部署等解决方案没错。像 Meta 和微软这样的巨头公司都会在内部构建自己的框架,以便深入集成现有的复杂应用。但我们相信,大多数人使用现成框架会更好。

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

截至目前,唯一被推荐的 React Native 社区框架是 Expo。Expo 团队自 React Native 早期起一直在投资其生态系统,如今我们认为 Expo 提供的开发者体验处于行业领先水平。

备注

Expo 框架是且将一直保持免费和开源,而 Expo 应用服务(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 的增长与创新。