Задать вопрос
@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. Важно для валидации
  • Вопрос задан
  • 45 просмотров
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Javascript.ru
    Курс по React
    5 недель
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 1
mmmaaak
@mmmaaak
В useEffect
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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