对一个字段进行多重验证 是的
Multiple validation on one field Yup
我正在使用 YUP 作为验证器来验证一个字段,但我已经在其中进行了测试,但我无法添加另一个验证。
我验证了这一点:
nome: Yup.string()
.required(Mensagens.CAMPO_OBRIGATORIO)
.test('teste-nome-igual',Mensagens.NOME_NAO_DEVE_SER_IGUAL,function(value){
let check = []
if(contatos.length > 0)
check = contatos.map((contato)=> contato.nome.toUpperCase() === value.toUpperCase())
return !check.includes(true)
}),
但我还想验证字段 nome
是否不包含任何非 ASCII 字符,如果是,则显示一条消息,它不能包含非字母的内容。
您可以将 test
链接多次作为 test
returns 架构。喜欢:
Yup.string()
.required(Mensagens.CAMPO_OBRIGATORIO)
.test('teste-nome-igual',
Mensagens.NOME_NAO_DEVE_SER_IGUAL,
function(value){
let check = []
if(contatos.length > 0)
check = contatos.map((contato)=> contato.nome.toUpperCase() === value.toUpperCase())
return !check.includes(true)
}
)
.test('test ascii',
"Nome shouldn't contain non-ascii chars",
(value) => {
// test for ascii chars here and return true or false.
}
)
我正在使用 YUP 作为验证器来验证一个字段,但我已经在其中进行了测试,但我无法添加另一个验证。
我验证了这一点:
nome: Yup.string()
.required(Mensagens.CAMPO_OBRIGATORIO)
.test('teste-nome-igual',Mensagens.NOME_NAO_DEVE_SER_IGUAL,function(value){
let check = []
if(contatos.length > 0)
check = contatos.map((contato)=> contato.nome.toUpperCase() === value.toUpperCase())
return !check.includes(true)
}),
但我还想验证字段 nome
是否不包含任何非 ASCII 字符,如果是,则显示一条消息,它不能包含非字母的内容。
您可以将 test
链接多次作为 test
returns 架构。喜欢:
Yup.string()
.required(Mensagens.CAMPO_OBRIGATORIO)
.test('teste-nome-igual',
Mensagens.NOME_NAO_DEVE_SER_IGUAL,
function(value){
let check = []
if(contatos.length > 0)
check = contatos.map((contato)=> contato.nome.toUpperCase() === value.toUpperCase())
return !check.includes(true)
}
)
.test('test ascii',
"Nome shouldn't contain non-ascii chars",
(value) => {
// test for ascii chars here and return true or false.
}
)