跳到主要内容

迈向 React Navigation 6.0

·3 分钟阅读
Satyajit Sahoo
核心团队

我们很高兴地宣布,我们终于发布了 React Navigation 6 的预发布版本。我们在半年多前发布了 React Navigation 5,它带来了许多新的动态 API 可能性,并获得了压倒性的积极反响。从那时起,我们一直在努力对库进行增量改进和优化,并思考如何使其变得更好。 这就引出了 React Navigation 的下一个主要版本。

虽然 React Navigation 5 是对 React Navigation API 的彻底改革,但 React Navigation 6 保留了相同的 API,只进行了一些重大更改,以使事物更加一致并提供更大的灵活性。我们还尝试解决用户遇到的一些常见痛点和困惑。

我们将在本博文中分享此版本的一些亮点。如果您正在寻找详细的升级指南,可以在这里找到。

亮点

  • 参数现在在导航时被覆盖而不是合并(可以选择合并)
  • 堆栈中的模态框现在默认在 iOS 上使用 presentation 样式,并且在 Android 上为模态框提供了一种新的滑动动画
  • 抽屉现在默认在 iOS 上使用滑动动画
  • 现在默认在抽屉底部标签页屏幕中显示标题,因此您不需要额外的堆栈导航器
  • 我们移除了 tabBarOptionsdrawerContentOptions 等,并将它们移动到屏幕上的 options 属性,以便可以为每个屏幕配置它们
  • Material Top Tabs 现在使用基于 ViewPager 的实现,这意味着它将提供原生体验
  • 我们现在有一个UI 元素库,其中包含我们在 React Navigation 中使用的各种组件

试用一下

如果您想试用一下,请将 @^6.x 添加到您正在安装的包中。例如

npm install @react-navigation/native@^6.x @react-navigation/stack@^6.x

下一步是什么?

我们计划更新我们的文档,以推荐 native-stack 作为默认设置。这将为不需要大量自定义的人们提供最佳性能,同时仍然可以选择在需要时使用基于 JavaScript 的实现。

如果 React Navigation 帮助您为客户交付价值,如果您可以赞助我们,这将意义重大。赞助将帮助我们更快地朝着构建最佳跨平台导航库的目标迈进,并继续为我们在 GitHub 问题中的错误报告提供及时的支持。

👉 访问我们的 GitHub Sponsors 页面 👈


我们希望您觉得此版本有用。请务必试用该版本并提供有关我们可以改进之处的反馈。您可以在 GitHub 仓库中打开一个 issue 或在 Twitter 上 @reactnavigation 给我们发推文。