React Hooks

Hooks é uma nova maneira de escrever componentes em React

Joey Clapton
3 min readMay 30, 2022
Hooks photo by Suad Kamardeen on Unsplash

O que são os hooks?

Segundo a documentação oficial do React:

Hooks são uma nova adição no React 16.8. Eles permitem que você use o state e outros recursos do React sem escrever uma classe.

Os hooks vieram para facilitar a criação e manutenção de componentes no React, abaixo vamos entender quais são os hooks mais comuns, seus conceitos e como aplicar na prática.

Hooks mais comuns

Nesse artigo vou abordar os 2 hooks mais comuns no React:

  • useState
  • useEffect

useState

Esse hook é responsável pela criação e atualização de um estado local.

No exemplo abaixo criei um botão que altera o background-color de uma div.

O primeiro passo é importar o useState dentro do componente.

Importando o useState

Depois de importar, iremos definir a variável reativa responsável pela mudança da cor da div.

Definindo variável de mudança de estado

Na linha 18 criei uma função que recebe a cor gerada pela função generateColor() e atualizo o valor da variável color, já na linha 26 eu chamo o evento onClick que chama a função setColor() que irá alterar a variável color.

Atualizando estado local com useState

useEffect

Esse hooks serve para lidar com efeitos do ciclo de vida, como: componentDidMount, componentDidUpdate e componentWillUnmount, ou seja, ele é realizado quando:

  • Quando o componente renderiza pela primeira vez;
  • Quando o valor da dependência é atualizado;
  • Quando o componente é desmontado.

No exemplo abaixo vou mostrar a hora atual atualizando a cada segundo.

Primeiro importamos o useEffect junto do useState.

Importando useEffect e useState

Aqui chamamos a função useEffect, ela recebe 2 parâmetros, o primeiro é uma callback, que vai ser executada em algum dos ciclos de vida, o segundo é um array de dependências que recebe às variáveis que irão ser atualizadas, nesse caso, sempre que localeTime for alterada, ele vai chamar o useEffect.

Chamando o useEffect

Para executar o useEffect só uma vez ou quando ele for renderizado, deixamos o segundo parâmetro que é o array de dependências vazio.

Para executar o useEffect quando o componente é atualizado, adicionamos a variável a ser observada como dependência. Já para executar antes do componente ser desmontado, retornamos uma função que irá ser executada

Conclusão

Vemos um uso dos 2 hooks mais comuns, talvez no futuro eu traga explicação sobre os outros hooks do React.

Documentação oficial

--

--