Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Filter dos livros disponíveis não funciona

Todos os botões estão filtrando corretamente, exceto o dos disponíveis. Segue meu código:

const botoes = document.querySelectorAll('.btn')
botoes.forEach(btn => btn.addEventListener('click', filtrarLivros))

function filtrarLivros(){
    const elementoBtn = document.getElementById(this.id) //reconhecer qual btn recebeu o click
    const categoria = elementoBtn.value //pega o valor do botão clicado
    let livrosFiltrados = categoria == 'disponivel' ? livros.filter(livro => livro.quantidade > 0) : livros.filter(livro => livro.categoria == categoria) //filtra os livros, compara o valor do botão com o dos livros e se estão disponíveis
    exibirOsLivrosNaTela(livrosFiltrados) // mostrando os livros filtrados na tela
}

Comparei com o código do arquivo zip no final do módulo e, aparentemente, está igual. Não achei a falha...

1 resposta
solução!

Dei uma olhada aqui no fórum e achei a solução que o Gustavo Candotti Monteiro já havia enviado:

"Faltou o VALUE do botão LIVROS DISPONÍVEIS.

Como realizar a correção? Segue a minha linha de código abaixo.

<li><button class="btn btn-disponiveis" href="#" id="btnLivrosDisponiveis" value="disponivel">LIVROS DISPONÍVEIS</button></li>

"

Fiz essa correção no index e funcionou perfeitamente!