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

[Sugestão] Remove o favorito posterior do que o que eu queria

O problema

Do jeito que a professora fez o código e com os testes que fiz, em uma lista de dois favoritos, ao clicar no botão de desfavoritar do primeiro item removerá o item posterior, do que o item que eu queria.

Possível solução

Usar o método filter invés do método slice.

function adicionarFavorito(novoFavorito) {
    const favoritoRepetido = favorito.some(item => item.id === novoFavorito.id)

    let novaLista = [...favorito];

    if(!favoritoRepetido) {
        novalista.push(novoFavorito);
        return setFavorito(novaLista);
    }

    novaLista = favorites.filter((fv) => fv.id !== novoFavorito.id);        
    return setFavorito(novaLista);
}

Ao fazer isso, resultará em um novo array com todos os elementos que não tem o id do favorito passado como argumento.

1 resposta
solução!

Oi Levi, tudo bem?

Muito obrigada por compartilhar com a gente essa sua sugestão! Legal ver você sempre contribuindo para as discussões no fórum.

Com certeza vai ajudar outros alunos, parabéns pela atitude :D

Um abraço e bons estudos.