Skip to content

API 总览

公开接口的紧凑参考。叙述风格的文档见 指南

完整 Go API(含未导出辅助函数)见 pkg.go.dev/github.com/wuhan005/govalid

顶层

go
// 校验 v,返回失败列表与整体 ok 标志。
func Check(v interface{}, lang ...language.Tag) (errs []*ErrContext, ok bool)

// 把 templates 合并到指定 locale(省略时为默认)。
func SetMessageTemplates(templates map[string]string, lang ...language.Tag)

变量

go
// 标签名——启动时改一次即可使用其他命名空间。
var RulesField   = "valid"
var LabelField   = "label"
var MessageField = "msg"

// 用于含 {field} / {limit} 的模板的占位符。
var FieldNamePlaceholder  = "{field}"
var FieldLimitPlaceholder = "{limit}"

// 已注册的校验器。请在启动时改动。
var Checkers map[string]CheckFunc

// 暴露 MobilePattern 便于替换内置手机号规则。
var MobilePattern *regexp.Regexp

类型

辅助函数

go
func NewErrorContext(c CheckerContext) *ErrContext
func MakeUserDefinedError(msg string)  *ErrContext
func MakeValueTypeError(c CheckerContext) *ErrContext
func MakeCheckerParamError(c CheckerContext) *ErrContext
func MakeCheckerNotFoundError(c CheckerContext) *ErrContext
func MakeFieldNotFoundError(c CheckerContext) *ErrContext

基于 MIT 协议发布。