您的
errValidation类型和
validator.ValidationErrors类型完全不同,类型不同。如果接口值包含具体类型的值
errValidation,则不能仅通过类型断言另一个具体类型
errValidation。
所以这将工作:
e := ValidationError(errors.New("some err"))if _, ok := e.(errValidation); ok { fmt.Println("ValidationError: OK")} else { fmt.Println("ValidationError: FALSE")}输出将是(在Go Playground上尝试):
ValidationError: OK



