跳至主内容

帮助迁移 React Native 库至新架构

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

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

摘要:我们正在完善支持 React Native 新架构的资源。已发布两个迁移示例仓库:应用迁移指南(RNNewArchitectureApp)和库迁移指南(RNNewArchitectureLibraries)。同时正在重构官网的新架构指南,并创建了GitHub工作组解答新架构相关问题。

引言

本文分享用于迁移 Native Modules(原生模块)和 Native Components(原生组件)至新架构 TurboModuleFabric Components 的工具资源更新。

React Native 开发者依赖大量开源库构建应用。要让整个生态全面适配新架构,这些库必须完成迁移,才能让开发者充分利用新架构的性能提升和能力扩展。

以下是我们为库开发者提供的迁移支持:

本文将深入解析这些资源的使用技巧,并同步主流 React Native 库的迁移进展。

文档

过去六个月,我们新增了新架构采用指南和关于 Fabric 的架构深度解析。接下来计划扩展更多文档内容,包括 TurboModule 开发指南、Codegen 原理解析等,预计在 0.70 版本发布时同步更新。

当前新架构指南涵盖应用迁移库迁移完整流程。

可通过此PR关注指南更新并提供反馈。

迁移示例

我们准备了两个代码驱动的迁移示例仓库。

RNNewArchitectureApp

此仓库演示如何将 React Native 0.67 旧架构应用及其原生模块/组件迁移至新架构最新版。每个提交对应独立迁移步骤。

Example steps to migrate an app
Commit list for a migration in the RNNewArchitectureApp repository

仓库结构如下:

  • main 分支仅含 README.md 文件,用于索引其他分支

  • 多个迁移分支展示从特定 RN 版本升级的过程

部分迁移分支包含 RUN.md 文件,用可读格式详解每个提交的操作步骤。

我们将持续更新此示例至最新稳定版,覆盖未来 React Native 次要版本迁移。若发现步骤问题,请在仓库提交 issue。该计划将持续至大部分用户完成新架构迁移。

RNNewArchitectureLibraries

此仓库逐步演示如何开发TurboModuleFabric Component,重点确保对新旧架构的双向兼容。

仓库结构类似:

  • main 分支仅含 README.md 文件,用于索引其他分支

  • 其他分支展示 TurboModuleFabric Component 开发流程

我们将持续更新示例至影响库开发的 React Native 新版本,并增加高级特性示例(如:命令实现、事件发射器、自定义状态)。若发现错误,请在仓库提交 issue。

支持渠道

我们创建了专属工作组供社区交流新架构问题与进展。库维护者可在此获取问题解答,同时帮助我们了解需求。加入方式参见说明文档,欢迎所有人参与。

工作组分为以下板块:

  • 公告:发布新架构里程碑与重大更新

  • 深度解析:技术深度话题讨论区

  • 文档:新架构文档与迁移材料讨论区

  • 库迁移:第三方库迁移进展交流区

  • 问答:新架构问题求助区

  • 版本发布:版本相关错误与构建问题讨论区

高效使用建议:

  • 库迁移板块登记您的库,便于我们同步迁移状态,理解开发者痛点以提供更好支持

  • 问答区提出阻塞性问题,团队和社区专家将全力协助解决

  • 关注其他板块的关联话题,新版本可能包含您需要的 API。可通过 GitHub 订阅特定讨论

我们计划持续支持这个工作组,直到 New Architecture 默认启用且所有主要库都完成迁移。

主流库的迁移状态

库维护者们在工作组讨论区分享了迁移进展,以下是简要概览:

后续计划

我们将持续投入资源支持 React Native 社区采用 New Architecture,具体行动包括:

  • 工作组 中持续提供支持

  • RNNewArchitecture 仓库中提供更多 New Architecture 实践案例

  • 提供最新最全的 New Architecture 文档

  • 通过 工作组 追踪核心库迁移状态

  • 简化开发者的迁移路径

此外,React Native 0.69 版本将显著改善 New Architecture 的开发者体验。您可以在此处查阅 0.69.0 版本的详细更新。

我们期待与您共同构建 New Architecture 的崭新未来!