Eventos
Os eventos React são uma forma de lidar com as interações do utilizador nas aplicações React. São semelhantes aos eventos HTML DOM, mas com algumas diferenças importantes:
- Os eventos React utilizam a convenção de nomenclatura camelCase (por exemplo, onClick em vez de onclick).
- As funções tratadoras de eventos são passados como funções em vez de strings:
<button onClick={handleClick}>Click me</button>
As funções tratadoras de eventos nos componentes funcionais do React são normalmente definidos no componente:
function Button() {
const handleClick = () => {
alert('Button clicked!');
};
return <button onClick={handleClick}>Click me</button>;
}
Passar argumentos para as funções tratadoras de eventos
Podemos passar argumentos para uma função tratadora de um evento através de uma função anónima:
function Button() {
const handleClick = (a) => {
alert(a);
};
return <button onClick={() => handleClick('Button clicked!')}>Click me</button>;
}
Passar funções tratadoras de eventos para um componente filho
Passar funções tratadoras de eventos para componentes filhos no React é um padrão comum para gerir interações e manter a separação de interesses. Normalmente isto é feito através de props:
function ParentComponent() {
const handleClick = () => {
console.log('Button clicked in parent component');
};
return (
<ChildComponent onClick={handleClick} />
);
}
function ChildComponent({ onClick }) {
return (
<button onClick={onClick}>
Click me
</button>
);
}
