ModelValidator
一个用于Swift中模型验证的框架,在验证时返回自定义错误。
用法
此框架旨在用于希望在每个验证时接收自定义错误的情况。这因为我们不想总是将错误以字符串的形式显示出来,有时我们希望突出显示无效字段并给出关于提供的数据错误的详细自定义信息。此外,如果我们考虑突出显示表单字段,我们必须同时获取所有验证错误,以获得更好的用户体验。此框架是为这些用例而设计的。
安装
Swift包管理器
首选的安装方式是使用Swift包管理器。
使用CocoaPods安装框架
使用CocoaPods安装框架
- 添加到Podfile
pod 'ModelValidator'
- 安装Pods
pod install
用途
- 所有可找到的参考的完整文档在 "Documentation" 文件夹中
- 要获取所有可用验证器的列表,请访问 "Validator extension docs"。
- 更多用途示例和规则通过和不通过示例可在 "Tests" 文件夹中找到。
示例用法
以下是一个模型最简单的验证示例。
import ModelValidator
struct LoginForm: Validatable {
var email: String?
var password: String
func validations(validations: inout Validations<LoginForm>) {
validations.add(\.email, !.nil && .email, error: .emailIsInvalid)
validations.add(\.password, .count(8...), error: .passwordIsTooShort)
}
enum ValidationError: Error {
case emailIsInvalid, passwordIsTooShort
}
}
更多示例可以在 "tests" 中找到。
贡献
如果您有关于新功能的想法,请创建一个issue或添加一个pull request。
我们不使用Linux,因此如果您有在Linux上运行的提议,请创建一个带有所需更改的pull request。
框架没有依赖项。您需要的是Swift编译器和您机器上的SwiftLint。
发布
该软件包是手动发布的。要发布,请注册账号并验证电子邮件,然后在pod trunk上发布
bundle exec pod trunk register $email
确保您在准备发布的commit上,并使用适当的标签名运行发布脚本
Script/release.sh 1.0.0