Задать вопрос
@DeniSidorenko

Как сделать выполнения console.log лишь после того как данные записались?

Привет есть такой код
const [data, setData] = useState({
    email: "",
    password: "",
    passwordCheck: "",
    phone: "",
    username: "",
    address: ""
  })

const onChangeHandler = (event) => {
    setData({...data, [event.target.name]: event.target.value})
    console.log(data)
  }


<label>E-mail*</label>
            <input type="email" onChange={onChangeHandler} defaultValue={data.email} name="email"/>
            <div className="form-error"></div>


При вводе в input данные сохраняются в state. НО console.log(data) показывает с опозданием в одно действия( Хотя стоит после setData) к примеру если я напишу в input Test то console.log покажет что в state лишь Tes
И за чего такая ошибка или где можно выполнить console.log лишь после обновления state. Важно для валидации
  • Вопрос задан
  • 44 просмотра
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Яндекс Практикум
    React-разработчик
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
Решения вопроса 1
mmmaaak
@mmmaaak
В useEffect
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Нижний Новгород
от 50 000 до 90 000 ₽
ITK academy Воронеж
от 50 000 до 90 000 ₽
IT ATLAS Москва
от 200 000 до 250 000 ₽