Olá caro humano que está lendo.
Com o objetivo de implementar a função de trocar a ordem de exibição entre crescente e decrescente o instrutor resolveu criar uma variável para guardar esse dado, no entanto pensei em um jeito 'automático' de decidir em como ordenar:
//ListaNegociacoes.js
ordena(criterio) {
const array = this.negociacoes;
if (array[0][criterio] > array[array.length - 1][criterio]) {
this._negociacoes.sort((a, b) => {
return a[criterio] - b[criterio];
})
} else {
this._negociacoes.sort((a, b) => {
return b[criterio] - a[criterio];
})
}
}
Basicamente o código testa se o primeiro valor da lista é maior que o ultimo, caso verdadeiro ele ordena em ordem crescente, e faz o contrario caso falso. Só queria compartilhar mesmo e saber se essa solução peca em algum principio dos padrões de projeto comerciais, thnks.