Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] controle.forEach is not a function

Bem, eu não estou conseguindo compreender esse problema que vem dando no meu codigo, tentei quebrar a cabeça procurando uma solução mas não consegui encontrar, aqui está o codigo:

const controle = document.querySelector("[data-controle]")

controle.forEach( (elemento) => {
    elemento.addEventListener('click', (evento) => {
        manipulaDados(evento.target.textContent, evento.target.parentNode)
    })
})

function manipulaDados(operacao, controle) {
    const peca = controle.querySelector("[data-contador]")

    if(operacao === "-") {
        peca.value = parseInt(peca.value) - 1
    } else {
        peca.value = parseInt(peca.value) + 1
    }
}
2 respostas

Oi, Alan

Esse erro acontece quando, no caso, "controle" é nulo, então

verifique o motivo de "document.querySelector("[data-controle]")" está retornando nulo

solução!

Oi, Luis dias

Consegui arrumar, o problema estava nesse pequeno trecho do codigo:

const controle = document.querySelector("[data-controle]")

Em vez de utilizar somente o querySelector deveria ser querySelectorAll, e além disso eu acabei esquecendo de colocar os data-attributes nos locais corretos, obrigado