Ganchos de reação
Hooks foram adicionados ao React na versão 16.8.
Hooks permitem que componentes de função tenham acesso ao estado e outros recursos do React. Por causa disso, os componentes de classe geralmente não são mais necessários.
Embora Hooks geralmente substituam componentes de classe, não há planos para remover classes do React.
O que é um Gancho?
Hooks nos permitem "ligar" em recursos do React, como métodos de estado e ciclo de vida.
Exemplo:
Aqui está um exemplo de um Hook. Não se preocupe se não fizer sentido. Entraremos em mais detalhes na próxima seção .
import React, { useState } from "react";
import ReactDOM from "react-dom";
function FavoriteColor() {
const [color, setColor] = useState("red");
return (
<>
<h1>My favorite color is {color}!</h1>
<button
type="button"
onClick={() => setColor("blue")}
>Blue</button>
<button
type="button"
onClick={() => setColor("red")}
>Red</button>
<button
type="button"
onClick={() => setColor("pink")}
>Pink</button>
<button
type="button"
onClick={() => setColor("green")}
>Green</button>
</>
);
}
ReactDOM.render(<FavoriteColor />, document.getElementById('root'));
Você deve import
Ganchos de react
.
Aqui estamos usando o useState
Hook para acompanhar o estado do aplicativo.
O estado geralmente se refere aos dados ou propriedades do aplicativo que precisam ser rastreados.
Regras do Gancho
Existem 3 regras para ganchos:
- Hooks só podem ser chamados dentro dos componentes da função React.
- Hooks só podem ser chamados no nível superior de um componente.
- Ganchos não podem ser condicionais
Nota: Hooks não funcionarão em componentes da classe React.
Ganchos personalizados
Se você tiver uma lógica com estado que precisa ser reutilizada em vários componentes, poderá construir seus próprios Hooks customizados.
Entraremos em mais detalhes na seção Custom Hooks .