2
respostas

[Sugestão] Ordenação crescente e decrescente

Olá.

Segue abaixo uma solução simples para tornar o botão 'ORDENAR POR PREÇO' ainda mais funcional.

A ideia é ordenar por preço Crescente ou Decrescente sempre que for clicado:

const btnOrdenarPorPreco = document.getElementById('btnOrdenarPorPreco')
btnOrdenarPorPreco.addEventListener('click', ordenarPreco)
let crescente = false

function ordenarPreco() {
    let livrosOrdenados

    if (crescente) {
        livrosOrdenados = livros.sort((a, b) => b.preco - a.preco)
        crescente = false
    } else {
        livrosOrdenados = livros.sort((a, b) => a.preco - b.preco)
        crescente = true
    }
    exibirLivrosTela(livrosOrdenados)
    
}

Bons estudos!

2 respostas

Olá, Alex.

Tudo bem?

Obrigado por compartilhar sua solução aqui com a gente. Realmente é uma solução simples e eficiente para essa funcionalidade.

Apenas uma sugestão, seria interessante adicionar um feedback visual para o usuário saber se a ordenação atual é crescente ou decrescente. Por exemplo, trocar a cor do botão ou adicionar uma seta indicando a direção da ordenação.

Espero ter ajudado e bons estudos!

Ótima dica, Renan.