Я использую React 16.3 с JEST и Enzyme в качестве моих тестовых утилит, у меня есть вход, где, когда пользователь вводит электронную почту и размывает поле, вызывается функция (handleInputBlur).В этой функции я обновляю состояние (setState) и setState()
callback, я вызываю другую функцию и передаю событие, которое было передано handleInputBlur
изначально.
Теперь, как я понимаю, так как setState
Является асинхронным React не позволяет передать событие в обратный вызов setState.Итак, я добавил event.persist()
, чтобы сохранить событие.Пока все работает хорошо.
Когда я пытаюсь запустить написанный мной JEST-тест и имитировать blur
на входе, он вызывает функцию, но выдает ошибку:
TypeError: e.persist is not a function
Я не могупонять, что именно нужно сделать, чтобы обойти эту проблему.