У меня есть большое приложение React со старым устаревшим кодом, который я не уверен, что он делает.
При обработке нажатия кнопки у нас был следующий код:
handleClick (evt) {
evt.preventDefault()
evt.stopImmediatePropagation()
// do stuff
}
Первоначально handleClick
был вызван через ref
. После рефакторинга мы используем обработчик событий onClick
для нашей кнопки.
Это заставило evt.stopImmediatePropagation()
перестать работать. Это даст следующую ошибку:
Uncaught TypeError: evt.stopImmediatePropagation не является функцией
Я легко смог это исправить, выполнив evt.nativeEvent.stopImmediatePropagation()
, который я нашел в других частях кода.
С учетом всего вышесказанного, я использовал evt.stopImmediatePropagation()
много раз в одних и тех же обстоятельствах и никогда раньше этого не случалось. Так почему в этом случае я должен получить доступ к nativeEvent
? Что именно это так или иначе?