Я пытаюсь проверить поле электронной почты в форме регистрации, чтобы проверить, существует ли оно уже. Для этого я проверяю выполнение GET-запроса на сервере, который возвращает true и false.
Это моя схема проверки для поля:
validationSchema={
yup.object().shape({
registrationEmail: yup.string().email('Invalid email').test('Unique Email','Email already in use', async (value) => {axios.get('http://localhost:5000/users/register', value).catch(err => console.log(err)) })
})
}
Проблема, похоже, что поле значений пустое. Как передать значение из поля Formik в мою функцию?
РЕДАКТИРОВАТЬ: удалось отправить значение с помощью следующего
registrationEmail: yup.string().email('Invalid email').test('Unique Email','Email already in use', function(value){return new Promise((resolve, reject) => {axios.get('http://localhost:5000/users/register', value)})})
У меня все еще возникают проблемы с возвратом ответа, вот что маршрут выглядит как
router.get('/register', (req, res) => {
User.findOne({email: req.body.email}).then(user => {
if(user){
return true
}else{
return false
}
})
})