Neste artigo você aprenderá a maneira correta de mudar estado de array em React JS, utilizando o hook useState

mudar estado de array em React capa

Fala programador(a), beleza? Bora aprender mais sobre React JS!

Gerenciar o estado em React JS é uma tarefa crucial que todo desenvolvedor enfrenta.

Quando o estado envolve arrays, existem práticas recomendadas para garantir que as atualizações sejam feitas de maneira imutável e otimizada.

Neste artigo, abordaremos a maneira correta de mudar o estado de arrays no React.

A importância da Imutabilidade

Em React, é essencial que as atualizações de estado sejam feitas de forma imutável. Isso significa que, ao invés de modificar diretamente o estado existente, criamos uma cópia e fazemos as alterações nesta nova versão.

Isso ajuda o React a realizar otimizações, garantindo que as renderizações sejam eficientes.

Atualizando um Array

Ao lidar com arrays em React, seguir práticas imutáveis é fundamental. Vamos ver alguns cenários comuns e como tratá-los corretamente:

Adicionando um item ao array

Quando desejamos adicionar um item a um array, podemos usar o spread operator para isso:

import React, { useState } from 'react';

function Lista() {
  const [itens, setItens] = useState([]);

  const adicionarItem = (item) => {
    setItens(itensAnteriores => [...itensAnteriores, item]);
  };

  return (
    // Renderização do componente...
  );
}

Removendo um item do array

Para remover um item, podemos utilizar o método filter:

const removerItem = (id) => {
  setItens(itensAnteriores => itensAnteriores.filter(item => item.id !== id));
};

Atualizando um item no array

Ao atualizar um item específico, podemos combinar map com uma condição:

const atualizarItem = (id, novoItem) => {
  setItens(itensAnteriores => 
    itensAnteriores.map(item => 
      item.id === id ? novoItem : item
    )
  );
};

Por que não usar métodos diretos do Array?

Métodos como push, pop, splice ou shift modificam o array original, o que é contraproducente à imutabilidade que o React recomenda.

Por isso, ao atualizar arrays, sempre optamos por métodos que retornem um novo array.

Uso combinado de useEffect

Em certas situações, pode ser necessário executar efeitos colaterais após a atualização do array. O Hook useEffect é útil nesses casos:

useEffect(() => {
  console.log("O array de itens foi atualizado!", itens);
}, [itens]);

Quer aprender mais sobre programação? Conheça nosso canal no YouTube:

Conclusão

Chegamos ao fim do artigo sobre como mudar estado de array em React JS!

No React, a imutabilidade é fundamental para manter o desempenho e evitar bugs. Ao atualizar arrays, essa prática é ainda mais crucial.

Utilizando as técnicas acima, garantimos que nossos componentes se comportem como esperado e otimizamos a performance do React.

Lembre-se: sempre evite modificar o estado diretamente. Em vez disso, crie uma nova cópia, faça suas alterações e, em seguida, defina essa cópia como o novo estado.

Esta abordagem, embora possa parecer um pouco mais trabalhosa inicialmente, garante um código mais robusto e otimizado.

Está buscando em evoluir como Programador? Confira o nossos cursos de programação.

Subscribe
Notify of
guest

0 Comentários
Inline Feedbacks
View all comments