React Native 0.84 发布 — Hermes V1 成为默认引擎、预构建 iOS 二进制文件与遗留架构移除
React Native 0.84(稳定版)于 2026 年 2 月 11 日发布。这是一次面向移动端和全栈团队的平台性发布,带来切实且高影响的变更:Hermes V1 现已成为默认的 JavaScript 引擎,iOS 构建默认使用预编译的 React Native 二进制文件,Legacy Architecture 的代码已从出货版本中移除,Node.js 的最低要求提升到 Node 22.11+。升级前请阅读发布说明——这将影响构建管线、本地模块和持续集成产物。
为何重要(简要)
- Hermes V1 默认为默认执行引擎:所有使用内置 Hermes 运行时的项目将自动获得 Hermes V1 VM/编译器,而无需代码变更——这将提升冷启动、内存使用和运行时性能;但它可能改变引擎语义和本地桥接时序特性。
- 默认使用预构建的 iOS 二进制:由于核心 RN 代码以预构建的 .xcframeworks 下载,而不是在每次构建时从源代码编译,因此 iOS 的干净构建速度更快。这会改变 CI 工具和二进制分发策略。
- 移除了 Legacy Architecture:Legacy Architecture 的代码路径已从出货的 iOS/Android 构建中物理移除;依赖旧内部结构或私有 API 的项目必须从源码重新构建或进行适配。
- Node 提升:工具链和持续集成需运行 Node >= 22.11;较旧的 Node 版本将导致 React Native CLI 与相关脚本出错。
面向全栈团队的直接实践清单
- 添加一个 Canary 分支,在推进到生产前,在 [email protected] 上运行完整的 CI 矩阵:
- 重新构建所有原生模块并发布/更新你所依赖的 Node/V8/Hermes ABI 的预构建产物。
- CI / 开发环境:
- 将 CI 镜像和本地开发环境升级到 Node 22.11+(使用 nvm/fnm 固定版本)。
- 如在 CI 中使用预构建的 iOS 二进制,请验证 pod install 步骤和产物缓存(RCT_USE_PREBUILT_RNCORE)。
- 原生模块与预构建二进制:
- 重新构建并测试每个原生 addon(C++/NDK、CocoaPods 原生代码),使其适配 RN 0.84。预编译的 iOS 框架改变了原生代码的链接方式——若你分发它们,请发布更新后的预构件二进制。
- 选择退出与兼容路径:
- 如要退出 Hermes V1,请从源码构建 RN,或通过包管理器覆盖固定遗留 Hermes 编译器,并遵循各平台的特定标志(示例请参见发布说明)。
- 若要禁用预构建的 iOS 二进制,在 pod install 时设置 RCT_USE_PREBUILT_RNCORE=0。
- 若必须重新启用 Legacy Architecture,需要从源码构建并传递 RCT_REMOVE_LEGACY_ARCH=0 及相关标志。
- 行为回归测试:
- 优先进行桥接、对时敏感代码、动画及此前通过遗留内部访问的本地 API 的集成测试。
- 检查崩溃与遥测管线,关注来自更新的 V8/Hermes 运行时与 Node 工具链的新错误签名。
- 工具链与静态检查:
- 如依赖 RN 推荐的工具链,请更新 ESLint 配置(RN 0.84 支持 ESLint v9 的扁平配置)。
- 验证任何构建时脚本或打包工具,确保不再假设旧版 Node 或遗留 RN 内部结构。
- 无障碍与平台特性:
- 确认应用的无障碍行为,特别是在 Android 上,已修复的可回收视图无障碍问题。
- 如依赖 HEIC/HEIF 工作流,请验证图片处理。
迁移说明(实用性)
- 分阶段 rollout:在测试轨道(内部 Beta)上线 RN 0.84,并逐步推进;前 24–72 小时内密切监控崩溃和性能遥测。
- 原生预构建:若你向客户或下游团队提供预构建的原生二进制,请协同发布针对 RN 0.84 的更新产物,以避免安装程序/运行时不匹配。
- 向后兼容性:已在 Hermes 与新架构上的项目应看到的功能变动较小,但请验证触及底层桥接 API 的第三方原生库。
要点 React Native 0.84 是一次有意义的平台升级——它为大多数应用带来即时的性能与开发体验提升(Hermes V1 + 更快的 iOS 构建),但需要对 CI、原生模块和 Node 工具链进行慎重更新。将其视为一次平台升级:阶段性 rollout、重新构建原生制品、在 CI 中升级 Node,并运行聚焦于原生桥接与对时敏感流程的测试矩阵。
来源:React Native 0.84 发布说明。 (reactnative.dev)
资料来源
继续阅读
Svelte 5.52.0 为 {@html} 增加 TrustedHTML 支持,实现更安全的 Trusted Types 集成
2026年2月21日Svelte 5.52.0(2026年2月18日)为 {@html} 表达式添加 TrustedHTML 支持,使应用能够在不进行字符串强制转换的情况下与浏览器的 Trusted Types 互操作——对 SSR 和客户端渲染的应用来说,XSS 防护很重要。
Next.js 16 使 Turbopack 成为开发和构建的稳定默认选项
2026年2月20日Next.js 16 将 Turbopack 调整为稳定/默认,提升对 Node.js 的最低版本要求,并发布面向生产的缓存原语——全栈团队现在必须改变的事项。
Vite 8.0.0‑beta.14 增加服务器端 .wasm?init(WASM 服务器端渲染)并将 Rolldown 更新至 1.0.0‑rc.4
2026年2月19日Vite 的 2026 年 2 月 12 日测试版引入对预初始化 WebAssembly 模块的 SSR 支持,并将打包器集成升级至 Rolldown 1.0.0‑rc.4——这是一项实用的变更,能够减少客户端 hydration 的工作量并提升 Wasm 密集型服务器渲染的工具链稳定性。