1
resposta

controle undefined

const controle = document.querySelectorAll("[data-controle]")
const estatisticas = document.querySelectorAll("[data-estatistica]")
const pecas = {
     "bracos": {
         "forca": 29,
         "poder": 35,
         "energia": -21,
         "velocidade": -5
     },

     "blindagem": {
         "forca": 41,
         "poder": 20,
         "energia": 0,
         "velocidade": -20
     },
     "nucleos":{
         "forca": 0,
         "poder": 7,
         "energia": 48,
         "velocidade": -24
     },
     "pernas":{
         "forca": 27,
         "poder": 21,
         "energia": -32,
         "velocidade": 42
     },
     "foguetes":{
         "forca": 0,
         "poder": 28,
         "energia": 0,
         "velocidade": -2
     }
 }

controle.forEach( (elemento) => {
     elemento.addEventListener("click", (evento) =>  {
         manipulaDados(evento.target.dataSet.controle, evento.target.parentNode)
        atualizaEstatistica(evento.target.dataSet.peca, evento.target.dataSet.controle)

     })
} )


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
     }
}


function atualizaEstatistica(peca){
console.log(pecas[peca])
estatisticas.forEach( (elemento) => {
    console.log(elemento.textContent)
} )
}

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

não sei oq aconteceu o codigo funcionava normalmente na aula passada

1 resposta

Olá Helton! Tudo bem? Dentro do seu forEach você está chamando a função manipulaDados, o atributo "dataset" está com a letra "S" maiúscula, eu ajustei colocando em minúscula todas as vezes que utilizou o "dataset" e funcionou, Veja:

Está assim:

manipulaDados(evento.target.dataSet.controle, evento.target.parentNode)

CORRIGIDO:

manipulaDados(evento.target.dataset.controle, evento.target.parentNode)

Você precisa ajustar todas palavras dataset.

Espero ter ajudado e bons estudos!