В вопросе рассматривается тема обработки событий в библиотеке React. Правильный ответ на вопрос – это <button onClick={this.handleClick}>Нажми меня</button>
. Этот код демонстрирует заносимый в стандарты практику обработки событий в React.
Метод handleClick
представляет собой функцию, которая выполняется при клике на кнопку. Этот метод обычно определяется внутри класса компонента и может содержать любой код, который должен быть выполнен в ответ на событие клика.
Пример:
class MyButton extends React.Component {
handleClick() {
console.log("Кнопка была нажата");
}
render() {
return (
<button onClick={this.handleClick}>
Нажми меня
</button>
);
}
}
В данном случае this.handleClick
ссылается на метод handleClick
текущего компонента.
При использовании обработчиков событий в React важно запомнить несколько правил:
Используйте фигурные скобки {}
вокруг обработчика событий в JSX. Это необходимо, чтобы React понимал, что вы передаете ему JavaScript-выражение.
Не вызывайте функцию обработчика событий напрямую при её передаче в JSX (onClick={handleClick()}
сразу вызовет функцию вместо передачи ссылки на функцию).
Не используйте строковые литералы при передаче обработчика события (onClick='handleClick()'
), так как это может привести к проблемам с производительностью и потенциальным угрозам безопасности на уровне JavaScript.
Вместо этого, следуйте показанному в правильном ответе примеру и передавайте ссылку на функцию обработчика события с помощью фигурных скобок и this
(onClick={this.handleClick}
).
Правильное использование обработчиков событий позволяет создавать чистый, эффективный и безопасный код на React.