O padrão Provider empacota os dados e os métodos que os alteram em um componente Provider com estado mais um hook personalizado correspondente: o estado vive dentro de useState ou useReducer, é repassado por meio de um Context, e o mundo externo lida apenas com leituras e escritas useXxx(). O Provider possui o estado e decide onde ele se aplica, o hook expõe uma API limpa, e os componentes no meio nunca ficam sabendo que um contexto existe.
Grupo
Padrões de Componentes
Tipo
Padrão
ℹ️ Informação O editor transpila JSX para JavaScript e renderiza a UI real na sandbox; os componentes são montados automaticamente — sem render manual.
Retorna:Sem valor de retorno; esta entrada descreve um padrão de codificação e não uma função.
▶ Exemplo
O exemplo roda direto: renderiza automaticamente ao expandir e edições valem na hora.
Saída:
Depois de clicar no botão, o carrinho lê imediatamente "Cart (1): Apple" — o estado é gerenciado em CartProvider enquanto ItemList o lê e escreve por meio de useContext.
💡 Dica Provider + useContext + um hook personalizado é o trio padrão para um estado global leve feito à mão; projetos pequenos não precisam de Redux.
ℹ️ Informação Coloque tanto o estado quanto a função de atualização no valor para que os consumidores possam ler e escrever de uma só vez; posicione o Provider no menor ancestral comum que dele precisa.
⚠️ Aviso Quando o valor é um objeto inline, cada renderização do Provider renderiza de novo todos os consumidores — estabilize-o com useMemo.
P Em que nível da árvore de componentes o Provider deve ficar?
R No menor ancestral comum de todos os consumidores; quanto menor o escopo, menos re-renderizações desnecessárias ele causa.
P Por que envolver o valor em useMemo?
R Um objeto inline é uma nova referência a cada renderização, o que força todo consumidor a renderizar de novo; useMemo armazena a referência em cache e evita isso.
P Como o padrão Provider difere do Redux?
R O padrão Provider é um recurso nativo do React que cabe a aplicações de pequeno e médio porte; o Redux acrescenta um pipeline uniforme de actions, middleware e ferramentas de depuração para aplicações grandes.
Equipe Técnica Web-Tutorial
Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.