Swift 中可组合的数据验证 API,公开了用于编写验证的简单 DSL。
ValidatableKit 允许通过为类型提供 Validator 来验证数据。 可以通过直接提供回调在基本数据类型上执行验证并提供 ValidatorResult 来创建 Validator
let skip: Validator<Int> = .init { _ in ValidatorResults.Skipped() }
或者可以使用库提供的 DSL 为复杂数据类型的属性添加验证
struct User: Validatable {
let name: String
let email: String
let age: Int
var validator: Validator<Self> {
return Validator<Self>
.name(!.isEmpty, .alphanumeric)
.email(.isEmail)
}
}
| 平台 | 最低 Swift 版本 | 安装 | 状态 |
|---|---|---|---|
| iOS 8.0+ / macOS 10.10+ / tvOS 9.0+ / watchOS 2.0+ | 5.1 | CocoaPods, Carthage, Swift Package Manager, 手动 | 完全测试 |
| Linux | 5.1 | Swift Package Manager | 完全测试 |
| Windows | 5.3 | Swift Package Manager | 完全测试 |
CocoaPods 是 Cocoa 项目的依赖管理器。有关使用和安装说明,请访问他们的网站。要使用 CocoaPods 将 ValidatableKit 集成到您的 Xcode 项目中,请在您的 Podfile 中指定它
pod 'ValidatableKit'
或者,您也可以使用 GitHub 发布页面中预构建的 XCFramework,通过将 {version} 替换为您要使用的所需版本。
pod 'ValidatableKit', :http => 'https://github.com/SwiftyLab/ValidatableKit/releases/download/v{version}/ValidatableKit-{version}.xcframework.zip'
Carthage 是一个去中心化的依赖管理器,它可以构建您的依赖项并为您提供二进制框架。要使用 Carthage 将 ValidatableKit 集成到您的 Xcode 项目中,请在您的 Cartfile 中指定它
github "SwiftyLab/ValidatableKit"
Swift Package Manager 是一个用于自动化 Swift 代码分发的工具,并集成到 swift 编译器中。
一旦您设置了 Swift 包,添加 ValidatableKit 作为依赖项就像将其添加到 Package.swift 的 dependencies 值一样简单。
.package(url: "https://github.com/SwiftyLab/ValidatableKit.git", from: "1.0.0"),
或者,您也可以使用 GitHub 发布页面中预构建的 XCFramework,通过将 {version} 和 {checksum} 替换为您要使用的所需版本和工件校验和。
.binaryTarget(name: "ValidatableKit", url: "https://github.com/SwiftyLab/ValidatableKit/releases/download/v{version}/ValidatableKit-{version}.xcframework.zip", checksum: "{checksum}"),
如果您不想使用任何上述依赖管理器,您可以手动将 ValidatableKit 集成到您的项目中。
打开终端,cd 进入您的顶级项目目录,并运行以下命令“如果”您的项目未初始化为 git 存储库
$ git init
通过运行以下命令添加 ValidatableKit 作为 git 子模块
$ git submodule add https://github.com/SwiftyLab/ValidatableKit.git
打开新的 ValidatableKit 文件夹,并将 ValidatableKit.xcodeproj 拖到应用程序 Xcode 项目或现有工作区的项目导航器中。
它应该嵌套在应用程序的蓝色项目图标下。 它是在所有其他 Xcode 组之上还是之下并不重要。
在项目导航器中选择 ValidatableKit.xcodeproj 并验证部署目标是否满足您的应用程序目标(应小于或等于)。
接下来,在项目导航器(蓝色项目图标)中选择您的应用程序项目,以导航到目标配置窗口,然后在边栏中的 Targets 标题下选择应用程序目标。
在该窗口顶部的选项卡栏中,打开“General”面板。
单击 Frameworks and Libraries 部分下的 + 按钮。
您将看到包含嵌套的 ValidatableKit.framework 的 ValidatableKit.xcodeproj 文件夹。
选择 ValidatableKit.framework,就这样!
ValidatableKit.framework会自动添加为目标依赖项、链接框架和构建阶段中嵌入的框架,这是您在模拟器和设备上构建所需的一切。
您还可以直接从 GitHub 发布页面下载预构建的工件
从 GitHub 发布页面下载格式为 ValidatableKit-{version}.xcframework.zip 的工件,其中 {version} 是您要使用的版本。
从存档中提取 XCFramework,并将 ValidatableKit.xcframework 拖到 Xcode 项目中应用程序目标文件夹的项目导航器中。
选择 Copy items if needed,就这样!
ValidatableKit.xcframework会自动添加到嵌入的Frameworks and Libraries部分,进而添加到构建阶段的链接框架中。
请参阅完整的 文档 以获取 API 详细信息和示例场景文章。
如果您希望贡献更改、提出任何改进建议,请查看我们的贡献指南,检查未解决的问题,看看是否已在处理或打开拉取请求。
ValidatableKit 是在 MIT 许可证下发布的。 有关详细信息,请参阅LICENSE。