Introdução
React possui vários Hooks que podem ser utilizados para resolver problemas específicios. Pense neles como uma caixinha de ferramentas, onde cada um possui uma função específica e vai te ajudar em algo. Também é possível construir seus próprios Hooks. Vamos ver alguns dos mais utilizados

Aqui é uma das partes do React que eu mais gosto, a variedade de Hooks que podemos utilizar para resolver problemas específicos é muito grande. Vamos ver alguns dos mais utilizados.
State Hooks
State
hooks permite armazenar informações em um estado do componente, inclusive realizando atualizações da interface.
Para adicionar um estado a um componente existem dois Hooks:
useState
- Utilizado para armazenar um estado em uma variável que pode ser atualizado através de uma funçãouseReducer
- Utilizado para armazenar um estado em uma variável que poder ser atualizado através de uma lógica de reducer functions
Effect Hooks
Effect
hooks permite executar uma função quando o componente é renderizado, ou quando um estado é atualizado. É muito utilizado para realizar chamadas a API, ou para executar uma função quando o componente é renderizado.
Para adicionar um efeito a um componente existem dois Hooks:
useEffect
- Utilizado para executar uma função quando o componente é renderizado, ou quando um estado é atualizadouseLayoutEffect
- Utilizado para executar uma função quando o componente é renderizado, ou quando um estado é atualizado, mas antes da atualização da interface

Conheça mais sobre os hooks em: