Dominando o gancho UseContext no React

O gancho do React useContexté uma ferramenta poderosa para compartilhar estado entre componentes sem ter que passar dados por uma longa cadeia de props. Com o useContext, você pode facilmente compartilhar o estado em toda a árvore de componentes, tornando-o uma ferramenta útil para gerenciar o estado global.

Neste artigo, exploraremos os fundamentos do useContextgancho e veremos como podemos usá-lo para gerenciar o estado em nossos aplicativos React.

Dominando o gancho UseContext

O que é useContext?

useContexté um gancho interno do React que permite consumir dados de um contexto que foi criado por um componente pai. Um contexto é um objeto que contém alguns dados de estado compartilhados que podem ser acessados ​​por qualquer componente que seja descendente do componente que criou o contexto.

O useContextgancho recebe um objeto de contexto como seu argumento e retorna o valor atual desse contexto. Isso significa que qualquer atualização no contexto acionará automaticamente uma nova renderização de todos os componentes que o consomem.

Como usar useContext?

Para usar useContext, primeiro precisamos criar um objeto de contexto. Podemos fazer isso usando o createContextmétodo da Reactbiblioteca. Aqui está um exemplo:

import React from 'react';

const MyContext = React.createContext();

import React from 'react';

const MyContext = React.createContext();

function App() {
  const [count, setCount] = React.useState(0);

  return (
    <MyContext.Provider value={{ count, setCount }}>
      <div>
        <h1>Count: {count}</h1>
        <Counter />
      </div>
    </MyContext.Provider>
  );
}

function Counter() {
  const { count, setCount } = React.useContext(MyContext);

  const increment = () => {
    setCount(count + 1);
  };

  return (
    <div>
      <button onClick={increment}>Increment</button>
    </div>
  );
}

O Appcomponente está envolvendo seus componentes filhos no MyContext.Providercomponente e passando o valor atual do estado compartilhado como valueprop. Nesse caso, o valor é um objeto contendo o countestado e a setCountfunção.

O Countercomponente está consumindo o MyContextobjeto usando o useContextgancho e extraindo o countestado e a setCountfunção do objeto de contexto. Estamos então usando a incrementfunção para atualizar o estado compartilhado quando o botão é clicado.

Quando usar useContext?

useContexté mais útil para gerenciar o estado global que precisa ser acessado por vários componentes em todo o aplicativo. É uma boa escolha para casos em que a perfuração de suporte seria complicada ou onde você deseja evitar a passagem de estado por várias camadas de componentes.

useContexttambém é uma boa escolha para casos em que você precisa passar funções pela árvore de componentes. Ao passar uma função pelo objeto de contexto, você pode evitar ter que passá-la por várias camadas de componentes.

Conclusão

O useContextgancho é uma ferramenta poderosa para gerenciar o estado global.

Espero que isso explique a todos vocês.

Suggested posts

Evitando as consequências devastadoras de um derrame: aprendendo com a jornada de uma família.

Evitando as consequências devastadoras de um derrame: aprendendo com a jornada de uma família.

Introdução O AVC é uma emergência médica que pode atingir qualquer pessoa a qualquer momento. Ocorre quando o fluxo sanguíneo para uma parte do cérebro é interrompido, levando a uma perda repentina da função cerebral.

Meus recursos de codificação mais usados

Meus recursos de codificação mais usados

Esta semana, recebi um e-mail de um membro da lista de e-mails diários. Eles queriam saber: quais recursos você visita diariamente, semanalmente e mensalmente? Ótima pergunta! Fico feliz em tentar compartilhar algumas ideias sobre meu fluxo de trabalho e os principais recursos que uso.

Related posts

Aprender na semana de trabalho é mais importante do que você pensa

Aprender na semana de trabalho é mais importante do que você pensa

Muitas vezes nos encontramos lutando para implementar o que sabemos que é bom para nós. Desde dizer a um outro significativo que o amamos até lembrar de falar como um pirata, sempre haverá quem afirme que um dia, semana ou mês de eventos não é necessário porque eles já estão fazendo essas coisas.

pronomes são super assustadores

Isso me atinge De repente, como tantas vezes acontece É o meio do caminho tudo de novo <Não, não aquele no Pacífico, seu marrom, aquele no carnaval> Todas as manchetes em voz alta…..

Dois anos em design - O bom, o mau e o feio…

Dois anos em design - O bom, o mau e o feio…

“Ei, Siri, toque Me Dive, de Olivia Dean.” Era maio de 2021 quando comecei meu estágio na Future Academy Africa em Akure, Nigéria.

VIDA SEM LIMITES

Quando você cresce, tende a ouvir que o mundo é do jeito que é e sua vida é apenas viver sua vida dentro do mundo, nunca arriscando sua vida, apenas siga um caminho definido e morra no final, e tente não bater demais nas paredes. Mas essa é uma vida muito limitada.