Что такое синтетические события

Ответ

Синтетические события — это обёртка над нативными событиями браузера в React, обеспечивающая кросс-браузерную совместимость. Они работают одинаково во всех браузерах, автоматически обрабатывая различия в API событий.

Ключевые особенности:

  • Объединяют поведение разных браузеров в единый интерфейс
  • Используют пулинг событий для производительности
  • События делегируются на корневой элемент (React 17+ изменено)

Пример обработки:

function handleClick(e) {
  e.preventDefault(); // Синтетическое событие
  console.log(e.type); // 'click'
}

<button onClick={handleClick}>Click</button>

Синтетические события имеют те же свойства, что и нативные, но с некоторыми отличиями (например, e.nativeEvent даёт доступ к оригинальному событию). React автоматически освобождает ресурсы событий после обработчиков.