Я хочу проверить наличие дубликатов электронной почты в рамках процесса регистрации, используя пользовательскую проверку от Yup
:
validationSchema={yup.object().shape({
email: yup
.string()
.email()
.test({
name: 'duplicate-email-check',
params: 'value',
message: 'Duplicate email already exists',
test: async (value) => {
firebase
.auth()
.fetchSignInMethodsForEmail(value)
.then(result => {
if (result === "password") {
return false
} else {
return true
}
})
.catch(err => console.log(err))
}
})
.required(),
})}
Я использую fetchSignInMethodsForEmail для получения любых учетные записи с тем же адресом электронной почты, и, если он существует, будет выдано сообщение об ошибке проверки. Я моделирую после схемы mixed (). Text () , но проблема в том, что сообщение об ошибке «Дублирующаяся электронная почта уже существует» не исчезает, как только появляется, даже если нет дублирующейся электронной почты.