重要提示

此软件包已被弃用,建议使用 Swift Navigation

SwiftUI 导航

用于使 SwiftUI 导航更简单、更符合人体工程学且更精确的工具。

概述

SwiftUI 提供了多种导航形式(标签、警报、对话框、模态表单、弹出窗口、导航链接等等),每种形式都有几种构建方法。这些方法大致可分为两类

“状态驱动”导航是更强大的导航形式,尽管稍微复杂一些。不幸的是,SwiftUI 并没有提供所有必要的工具来使用枚举对我们的域进行建模并利用导航 API。这个库弥合了这一差距,它提供的 API 允许您将导航目的地建模为枚举,然后通过绑定到该枚举来驱动导航。

通过查看文档并阅读以下文章,探索此库提供的所有工具

示例

此仓库附带了许多示例,演示如何使用该库解决常见和复杂的导航问题。查看目录以查看所有示例,包括

了解更多

SwiftUI Navigation 的工具的设计灵感和动机来自于 Point-Free 的许多剧集,这是一个探索函数式编程和 Swift 语言的视频系列,由 Brandon WilliamsStephen Celis 主持。

您可以在此处观看所有剧集。

video poster image

社区

如果您想讨论此库或对如何使用它来解决特定问题有疑问,可以与 Point-Free 爱好者在以下几个地方进行讨论

安装

您可以通过将 SwiftUI Navigation 添加为软件包依赖项,将其添加到 Xcode 项目中。

https://github.com/pointfreeco/swiftui-navigation

如果您想在 SwiftPM 项目中使用 SwiftUI Navigation,只需将其添加到 Package.swift 中的 dependencies 子句中即可

dependencies: [
  .package(url: "https://github.com/pointfreeco/swiftui-navigation", from: "1.0.0")
]

文档

SwiftUI Navigation API 的最新文档可在此处获取:此处

许可证

此库在 MIT 许可证下发布。有关详细信息,请参阅 LICENSE