Context + Reducer: contêineres simples de estado
Combine Context + useReducer para criar um pequeno contêiner de estado: Provider expõe o estado e dispatch por meio de um hook personalizado.
Context + Reducer: contêineres simples de estado é uma aula grátis de React Academy no CoddyKit. Esta é a aula 3 de 3. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de React Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de React Academy inclui 3 aulas no total.
Por que usar contexto + redutor?
Objetivo: agrupar a lógica de estado em um provedor (contexto) + redutor. Os filhos leem por meio de um pequeno gancho personalizado: sem passagem de propriedades em cadeia e com atualizações previsíveis.
Etapas de projeto
Padrão:
- Criar o contexto
- Dentro do provedor: useReducer(estado, ação)
- Fornecer {estado, despacho}
- Criar um gancho no estilo useCounter() que chame useContext
Demonstração: contêiner de contador
Um CounterProvider mínimo expõe estado e despacho; os filhos usam useCounter() para ler e atualizar.
<div id="root"></div>
Orientações sobre ações e API
Orientações:
- Mantenha as ações pequenas (INC, DEC, RESET).
- Mantenha o redutor junto do provedor.
- Exporte apenas o gancho personalizado para que os consumidores permaneçam simples.
Demonstração: contêiner de tarefas
Um pequeno TodoProvider mostra vários campos sendo atualizados de forma previsível com um único redutor e uma API de gancho simples.
<div id="root"></div>
Armadilhas e dicas
Armadilhas:
- Esquecer de envolver os filhos com o provedor.
- Colocar objetos enormes no contexto; passe apenas o necessário.
- Alterar o estado diretamente no redutor — sempre retorne novos objetos.
Verificação do padrão de contêiner
Recapitulação
Recapitulação: o contexto fornece acesso; useReducer gerencia as transições. Exporte um pequeno gancho useXxx para ler {estado, despacho} e manter simples o código dos consumidores.
Perguntas Frequentes
A aula “Context + Reducer: contêineres simples de estado” é grátis?
Sim — o texto completo de “Context + Reducer: contêineres simples de estado” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de React Academy, atualize para CoddyKit PRO. O curso de React Academy inclui 3 aulas no total.
O que vou aprender em “Context + Reducer: contêineres simples de estado”?
Combine Context + useReducer para criar um pequeno contêiner de estado: Provider expõe o estado e dispatch por meio de um hook personalizado. Você pratica React Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar React Academy?
Nenhuma experiência prévia é necessária. React Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 3.
Quanto tempo leva a aula “Context + Reducer: contêineres simples de estado”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de React Academy?
Sim. Cada aula de React Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Noções básicas de Context e como evitar a passagem excessiva de props
- Noções básicas de useReducer e padrões de ações
- Context + Reducer: contêineres simples de estado