Introdução ao React

Aprenda uma introdução ao React: saiba o que é, como funcionam componentes, JSX, props e state para começar a construir interfaces reativas.

Avatar de Polyana Cunha
Polyana Cunha
Introdução ao React

Você abre qualquer vaga de front-end e lá está: React. Antes de sair decorando sintaxe, vale entender o que essa biblioteca resolve e por que ela virou padrão.

Imagem de abertura que traduz a ideia central do React — interface montada a partir de componentes que se encaixam.
Imagem de abertura que traduz a ideia central do React — interface montada a partir de componentes que se encaixam.

O que é React, afinal

React é uma biblioteca JavaScript para construir interfaces. Só isso. Ele não é um framework completo com regras para tudo: o foco dele é a camada visual, a parte que o usuário vê e com que interage.

A ideia central é quebrar a tela em pedaços pequenos e reutilizáveis, e deixar o React cuidar de atualizar a tela quando os dados mudam. Em vez de você mexer no DOM na mão, você descreve como a interface deve parecer e o React se vira para refletir isso.

Componentes: os blocos de montar

Em React tudo é componente. Um botão, um card, um formulário, a página inteira: cada um é uma função que retorna um pedaço de interface.

function Saudacao() {
  return <h1>Olá, mundo!</h1>;
}

Componentes se encaixam uns dentro dos outros, como peças de Lego. Você monta componentes pequenos e combina eles em componentes maiores. Isso deixa o código organizado e, principalmente, reutilizável: escreveu um Botao uma vez, usa em dez lugares.

JSX: HTML dentro do JavaScript

Aquele <h1> no meio do JavaScript é JSX. É uma sintaxe que deixa você escrever algo parecido com HTML direto no código.

function Perfil() {
  const nome = "Ana";
  return <p>Bem-vinda, {nome}!</p>;
}

As chaves {} são a ponte: dentro delas você coloca JavaScript de verdade — variáveis, contas, chamadas de função. Parece HTML, mas é JavaScript, então a lógica e a marcação vivem juntas.

Props e state: dados que descem e dados que mudam

Componentes precisam de dados, e eles chegam por dois caminhos.

Props são os dados que um componente recebe de fora, como argumentos de função. Quem usa o componente passa os valores.

function Saudacao(props) {
  return <h1>Olá, {props.nome}!</h1>;
}

// uso: <Saudacao nome="Ana" />

Props são só de leitura: o componente não muda o que recebeu.

State é o dado interno que muda ao longo do tempo — um contador, um campo de formulário, um menu aberto ou fechado. Quando o state muda, o React re-renderiza o componente sozinho.

import { useState } from "react";

function Contador() {
  const [contagem, setContagem] = useState(0);
  return (
    <button onClick={() => setContagem(contagem + 1)}>
      Cliquei {contagem} vezes
    </button>
  );
}

A regra mental: props descem de pai para filho, state mora dentro do componente.

O modelo declarativo (e por que ele facilita a vida)

Aqui está o pulo do gato. No jeito antigo (imperativo), você dava ordens passo a passo: "pega esse elemento, muda o texto, esconde aquele outro". Fácil de bagunçar.

React é declarativo: você descreve como a tela deve estar para um certo estado, e ponto. Mudou o state? Você não corre atrás de atualizar cada pedacinho na mão. O React compara o que era com o que deve ser e aplica só a diferença.

É a diferença entre dizer "o botão mostra a contagem atual" e ter que lembrar de reescrever o texto do botão toda vez que o número muda. Menos passos manuais, menos bugs.

Ecossistema e quando usar React

React sozinho é enxuto, então na prática ele anda acompanhado. Para começar um projeto hoje, o Vite é o caminho: um comando e você tem um ambiente rodando em segundos.

Aquele useState que apareceu é um hook — funções especiais que dão superpoderes aos componentes, como guardar state ou reagir a eventos. Tem vários (useEffect, useContext e por aí vai), mas isso é papo para depois; por enquanto, saber que eles existem já basta.

E quando React faz sentido? Quando a interface tem bastante interação e estado mudando: dashboards, apps, telas que reagem ao usuário o tempo todo. Para uma página estática simples, pode ser canhão para matar mosca. Use quando a complexidade da tela justifica.

No fim, React é isso: componentes que se encaixam, dados que fluem e uma tela que se atualiza sozinha. Comece montando componentes pequenos, brinque com props e state, e o resto vem no caminho.

Gostou do artigo?

Compartilhe com seus amigos e ajude a espalhar conhecimento!