跳至主内容

使用框架构建 React Native 应用

· 1 分钟阅读
Nicola Corti
Nicola Corti
Software Engineer @ Meta
非官方测试版翻译

本页面由 PageTurner AI 翻译(测试版)。未经项目官方认可。 发现错误? 报告问题 →

React Conf 大会上,我们更新了关于构建 React Native 应用的最佳入门工具建议:React Native 框架——一个包含所有必要 API 的工具箱,可帮助您构建生产就绪的应用程序。

使用 React Native 框架(例如 Expo)现已成为创建新应用的推荐方式。

本文中,我们将详细介绍这些框架的具体含义,以及它们对正在启动新项目的 React Native 开发者意味着什么。

什么是 React Native 框架?

如果您曾构建过生产级应用,可能知道开发者迟早都需要解决一系列常见问题。

无论是开发 Web 还是原生应用,您通常都需要让用户在不同屏幕间导航、获取数据并存储用户状态。但对于原生应用,还需应对更多挑战:需要工具来升级 React Native 版本间的原生代码、管理所有依赖项的兼容版本,以及处理原生构建工具。

在没有合适工具的情况下,将应用从概念变为产品需要付出巨大努力。

我们希望您专注于为用户编写精美的应用和功能,而不是反复解决这些共性问题。

因此我们相信,体验 React Native 的最佳方式是通过框架——它提供了构建生产就绪应用所需的完整工具箱。

我们发现一个事实:您要么在使用框架,要么就在构建自己的框架

构建自有框架并无不妥——您可以自主设计路由、导航、部署等解决方案。像 Meta 和 Microsoft 这样的大型企业会在内部构建专属框架,以深度集成到现有应用中。但我们认为对多数人而言,使用现有框架会是更优选择。

如果您使用过 React 开发 Web 应用,可能已熟悉类似的 生产级 React 框架概念。

截至目前,React Native 唯一推荐的社区框架是 Expo。Expo 团队从 React Native 早期就开始投入生态建设,我们相信当前 Expo 提供的开发者体验处于行业顶尖水平。

备注

Expo 框架本身是且将持续保持免费开源,而 Expo Application Services (EAS) 是可选付费服务。

如果您近期未使用过 Expo,请务必观看 Kadi 在 Expo 的这场演讲,她展示了 2024 年 Expo 的最新能力。

我们已在官网更新了入门页面以体现此项建议。

框架将如何影响您?

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

如需将现有应用迁移至 Expo,可在 Expo 官网查阅迁移指南。Expo 提供诸多优势,包括更简便的 React Native 版本升级方式、更优的开发者体验等。

不过,如果您无法或不想迁移到 Expo,也完全没有问题。继续使用官方框架之外的 React Native 仍将获得支持。您一直在使用的工具(如 React Native Community CLI、模板和 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 核心与框架的职责边界,将促进更健康的生态系统发展,为 React Native 注入创新活力与增长动能。