我如何检查密码是否与 yup 匹配
how can I check if the password matches with yup
我想使用 oneOf,但它不起作用。我想检查密码和重复密码是否匹配。在 nodejs 中它可以工作,但在 react native 中它不起作用。除 password-Repeat 外,显示所有错误。为什么?
const registerSchema = yup.object().shape({
fullName: yup.string()
.required('Your name is required.')
.min(4)
.max(40),
email: yup.string()
.required()
.min(6)
.max(255)
.email(),
password: yup.string()
.required()
.min(7)
.max(255),
passwordRepeat: yup.string()
.oneOf([yup.ref('password'), null], 'Password does not match')
});
我所有的 TextInput 都有值,onChangeText 和 onBlur 和所有字段都工作正常,除了密码重复
试试这个方法
Yup.object().shape({
password: Yup.string().required("Required"),
passwordRepeat: Yup.string()
.required("Required")
.when('password', (password, schema) => {
return schema.test({
test: (passwordRepeat) => password === passwordRepeat,
message: 'Password does not match',
});
}),
});
我想使用 oneOf,但它不起作用。我想检查密码和重复密码是否匹配。在 nodejs 中它可以工作,但在 react native 中它不起作用。除 password-Repeat 外,显示所有错误。为什么?
const registerSchema = yup.object().shape({
fullName: yup.string()
.required('Your name is required.')
.min(4)
.max(40),
email: yup.string()
.required()
.min(6)
.max(255)
.email(),
password: yup.string()
.required()
.min(7)
.max(255),
passwordRepeat: yup.string()
.oneOf([yup.ref('password'), null], 'Password does not match')
});
我所有的 TextInput 都有值,onChangeText 和 onBlur 和所有字段都工作正常,除了密码重复
试试这个方法
Yup.object().shape({
password: Yup.string().required("Required"),
passwordRepeat: Yup.string()
.required("Required")
.when('password', (password, schema) => {
return schema.test({
test: (passwordRepeat) => password === passwordRepeat,
message: 'Password does not match',
});
}),
});