跳到主要内容

使用框架构建 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 的增长与创新。