Variáveis, Constantes, Estados e Estruturas de Decisão no React: Conceitos e Prática

Postado Por:

Categoria:

Postado em:

Variáveis, Constantes, Estados e Estruturas de Decisão no React: Conceitos e Prática

Entenda como trabalhar com variáveis, constantes, estados e estruturas de decisão no React, e veja como cada um impacta a reatividade da sua aplicação

No React, trabalhar com dados de maneira organizada e eficiente é uma habilidade essencial. Variáveis, constantes e estados são conceitos fundamentais que permitem armazenar e manipular informações na aplicação. Além disso, o React utiliza estruturas de decisão para que você possa condicionar a exibição de componentes e comportamentos com base em valores dinâmicos.

Este artigo abordará:

  • Como declarar variáveis e constantes no contexto do React
  • O conceito e a utilização de estados com o hook useState
  • Estruturas de decisão (if, else, switch) aplicadas ao React
  • Exercícios práticos para consolidar o aprendizado

1. Variáveis e Constantes no React

Em React, variáveis e constantes são declaradas usando let e const, conforme o padrão ES6 do JavaScript. A escolha entre uma ou outra depende de como você planeja utilizá-las.

  • let: Cria uma variável cujo valor pode ser alterado posteriormente. Usada quando você precisa de valores mutáveis, mas que não sejam persistentes no estado.
  • const: Define uma constante cujo valor não pode ser alterado. É ideal para valores que não devem mudar.

Exemplos de Declaração:

// Declaração de uma variável que pode mudar
let nomeUsuario = "João";

// Declaração de uma constante que não muda
const saudacao = "Bem-vindo";

No React, essas variáveis e constantes são usadas para valores que não precisam causar uma re-renderização do componente. Por exemplo, você pode definir uma variável ou constante para armazenar dados temporários.

Exemplo Prático em um Componente:

import React from 'react';

function Saudacao() {
    const saudacao = "Olá";
    let nome = "Alice";

    return (
        <div>
            <h1>{saudacao}, {nome}!</h1>
        </div>
    );
}

export default Saudacao;

2. Estados no React

Em React, o estado (state) é uma forma de armazenar e manipular dados que afetam a renderização do componente. O hook useState é utilizado para definir estados em componentes funcionais.

Declarando um Estado com useState

O useState retorna um par: o valor atual do estado e uma função que permite atualizá-lo. Veja como é feito:

import React, { useState } from 'react';

function Contador() {
    const [contador, setContador] = useState(0); // Inicializa contador com 0

    return (
        <div>
            <p>Contador: {contador}</p>
            <button onClick={() => setContador(contador + 1)}>Incrementar</button>
        </div>
    );
}

export default Contador;

Neste exemplo:

  • contador é o valor do estado.
  • setContador é a função que atualiza o valor do estado.

Ao clicar no botão, setContador atualiza o estado, o que causa a re-renderização do componente com o novo valor.

3. Estruturas de Decisão no React

Estruturas de decisão, como if e switch, são usadas em React para condicionar o comportamento e a renderização de componentes com base em valores ou estados.

Usando if e else

Para renderizar condicionalmente no JSX, utilize if fora do retorno ou operadores ternários dentro do JSX.

import React, { useState } from 'react';

function SaudacaoCondicional() {
    const [isLoggedIn, setIsLoggedIn] = useState(true);

    if (isLoggedIn) {
        return <h1>Bem-vindo, usuário!</h1>;
    } else {
        return <h1>Por favor, faça login.</h1>;
    }
}

export default SaudacaoCondicional;

Usando o Operador Ternário

O operador ternário é uma forma concisa de aplicar condições no JSX:

function SaudacaoCondicional() {
    const [isLoggedIn, setIsLoggedIn] = useState(true);

    return (
        <div>
            {isLoggedIn ? <h1>Bem-vindo, usuário!</h1> : <h1>Por favor, faça login.</h1>}
        </div>
    );
}

Usando switch para Condições Complexas

Para múltiplas condições, o switch pode ser útil:

function Pagina() {
    const [pagina, setPagina] = useState("home");

    function renderizarPagina() {
        switch (pagina) {
            case "home":
                return <h1>Página Inicial</h1>;
            case "about":
                return <h1>Sobre Nós</h1>;
            case "contact":
                return <h1>Contato</h1>;
            default:
                return <h1>Página não encontrada</h1>;
        }
    }

    return <div>{renderizarPagina()}</div>;
}

4. Exercícios Práticos

Abaixo estão alguns exercícios práticos para aplicar os conceitos de variáveis, constantes, estados e estruturas de decisão em React.

Exercício 1: Incrementador e Decrementador de Contador

  1. Crie um componente chamado ContadorAvancado.
  2. No estado, inicialize o valor do contador em 0.
  3. Adicione dois botões: um para incrementar e outro para decrementar o valor do contador.
  4. Use uma estrutura de decisão para evitar que o contador fique abaixo de 0.

Exemplo de Comportamento Esperado:

import React, { useState } from 'react';

function ContadorAvancado() {
    const [contador, setContador] = useState(0);

    function incrementar() {
        setContador(contador + 1);
    }

    function decrementar() {
        if (contador > 0) {
            setContador(contador - 1);
        }
    }

    return (
        <div>
            <p>Contador: {contador}</p>
            <button onClick={incrementar}>Incrementar</button>
            <button onClick={decrementar}>Decrementar</button>
        </div>
    );
}

export default ContadorAvancado;

Exercício 2: Exibição Condicional de Mensagem

  1. Crie um componente chamado MensagemCondicional.
  2. Crie uma variável isAdmin e defina-a como true ou false.
  3. Use uma estrutura condicional para exibir “Bem-vindo, Administrador!” se isAdmin for true, e “Bem-vindo, Usuário!” caso contrário.
import React from 'react';

function MensagemCondicional() {
    const isAdmin = true;

    return (
        <div>
            {isAdmin ? <h1>Bem-vindo, Administrador!</h1> : <h1>Bem-vindo, Usuário!</h1>}
        </div>
    );
}

export default MensagemCondicional;

Exercício 3: Mudança de Páginas com useState e switch

  1. Crie um componente chamado MenuDeNavegacao.
  2. Defina uma lista de páginas (home, sobre, contato) e configure o estado inicial como home.
  3. Crie botões para cada página e use um switch para renderizar o conteúdo correto com base na página selecionada.
import React, { useState } from 'react';

function MenuDeNavegacao() {
    const [pagina, setPagina] = useState("home");

    function renderizarPagina() {
        switch (pagina) {
            case "home":
                return <h1>Página Inicial</h1>;
            case "sobre":
                return <h1>Sobre Nós</h1>;
            case "contato":
                return <h1>Contato</h1>;
            default:
                return <h1>Página não encontrada</h1>;
        }
    }

    return (
        <div>
            <button onClick={() => setPagina("home")}>Home</button>
            <button onClick={() => setPagina("sobre")}>Sobre</button>
            <button onClick={() => setPagina("contato")}>Contato</button>
            {renderizarPagina()}
        </div>
    );
}

export default MenuDeNavegacao;

Conclusão

Neste post, exploramos os fundamentos de variáveis, constantes, estados e estruturas de decisão em React. Essas ferramentas são essenciais para manipular e exibir dados de forma dinâmica na interface. Ao praticar com os exercícios fornecidos, você conseguirá aprimorar ainda mais suas habilidades, criando interfaces interativas e dinâmicas.

A prática constante é a chave para o domínio do React. Experimente adaptar os exercícios com suas próprias ideias e explorar outras formas de utilizar os conceitos discutidos!

Deixe seu comentário

Posts RELACIONADOS