Fala galera to com uma duvida de como usar o sort para colocar os times em ordem alfabetica, alguem consegue me ajudar com essa?
Fala galera to com uma duvida de como usar o sort para colocar os times em ordem alfabetica, alguem consegue me ajudar com essa?
Olá, Pamella!
Conseguir implementar a sua ideia no meu projeto ficou bem legal em resumo, com o seguinte código no app.js, uma observação é que eu utilizo a versão da quinta aula, então talvez tenha uma coisa ou outra a mais do que o seu, código:
const timesOrdenados = times.slice().sort((a, b) => a.nome.localeCompare(b.nome));
Vou dividir a explicação em partes:
times.slice(): A função slice() é usada para criar uma cópia do array times. Isso é importante porque o método sort() modifica o array original e isso pode não ser legal.
.sort((a, b) => a.nome.localeCompare(b.nome)): Aqui, usamos o método sort() para ordenar os elementos do array. O método sort() recebe uma função de comparação como argumento, que determina a ordem de classificação dos elementos.
O resultado dessa operação é o array timesOrdenados, que contém os mesmos objetos do array times, mas ordenados em ordem alfabética com base no nome de cada time, sendo assim depois basta implementar na section do app.js, ficando assim:
<section className="times">
<h1>Minha organização</h1>
{timesOrdenados.map((time, indice) => <Time key={indice} time={time} colaboradores={colaboradores.filter(colaborador => colaborador.time === time.nome)} />)}
</section>
Dessa forma, ao renderizar os times no componente App, eles serão exibidos em ordem alfabética pelo nome, observe meu resultado que bacana:

Espero ter ajudado, reforço que em casos de dúvidas, conte sempre com o fórum da comunidade Alura! Bons estudos!
Sucesso ✨
Um grande abraço e até mais!