Я пытаюсь вставить данные, скажем, "требуется номер телефона". Я заполнил поле телефонного номера, и оно заполнено, но когда я нажимаю кнопку «Подтвердить», в поле «Телефонный номер» указано «Требуется номер телефона», несмотря на то, что я ввел номер телефона в поле «Телефонный номер».
Это проверка номера телефона:
if(!values.phoneNumber){
errors.phoneNumber = 'phoneNumber required'
}
И это мой виджет Номер телефона:
import React, {useState} из 'response';
import 'реагировать на телефон- номер-вход / стиль css '. импортировать PhoneInput, {isValidPhoneNumber} из 'response-phone-number-input';
const PhoneWidget = ({
step,
precision,
input,
placeholder,
label,
theme,
props,
meta: { valid,touched, error },
...rest
}) =>
{
const [value,setValue] = useState();
return(
<div className='form-group'>
<label forname={input.name}>{label}</label> <br />
<PhoneInput
value={value}
placeholder={!input.value ? 'Please, type a number' : input.value}
//ISSUE onChange={event => OnValueChange(event)}
//Problem is here. Maybe I'm not setting the value
onChange= {setValue}
error={value ? (isValidPhoneNumber(value) ? undefined :
'Invalid phone number') : 'Number Phone required'}
className='form-control'
/>
//Here I get the validation error.
{(!valid && touched) &&
<p className='help-block'>{error}</p>
}
{/* <div className='text-danger' style={{ marginBottom: '20px' }}>
{touched && error}
</div>*/
</div>
)
}
export default PhoneWidget;
Я не могу понять. Я набираю данные в поле «Телефонный номер», и когда я нажимаю кнопку «Отправить», когда поле «Телефонный номер заполнен», поле «Телефонный номер» получает сообщение об ошибке проверки и сообщает «Требуется телефонный номер».
Любой, кто знает, что я могу, исправить эту проблему?