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

o codigo esta igual, mas nao funciona!

Boa tarde pessoal!

estou com dificildade em fazero codigo funcionar, ele esta exatamente igual ao dos intrutores, porem simplismente nao funciona, aparece um erro no console, que nao consigo identificar qual é! aparece da seguinte forma:

app.js:3 Uncaught TypeError: Cannot read properties of null (reading 'querySelector') at alterarStatus (app.js:3:30) at HTMLAnchorElement.onclick (VM276 index.html:1:1)

não sei o que fazer, estou a horas tentando achar o erro, e nao consigo!
segue o codigo abaixo:

function alterarStatus(id) {
let gameClicado = document.getElementById(`game- ${id}`);
let imagem = gameClicado.querySelector('.dashboard__item__img');
let button = gameClicado.querySelector('.dashboard__item__button');

if(imagem.classList.contains('dashboard__item__img--rented')) {
    imagem.classList.remove('dashboard__item__img--rented');
} else {
    imagem.classList.add('dashboard__item__img--rented');
}

}

ele mostra que o erro esta na linha 3, mas não identifiquei qual o erro.

3 respostas
solução!

Oi!

O erro deve estar nessa linha:

let gameClicado = document.getElementById(`game- ${id}`);

Repare que no seu código tem um espaço em branco após o game-

Altere essa linha para:

let gameClicado = document.getElementById(`game-${id}`);

Olá, Claudia! Tudo bom com você?

Pelo que eu vi do seu código, o que eu imagino que possa ser o erro, é que, nesse trecho 'let gameClicado = document.getElementById(game- ${id});' quando você está passando o identificador do elemento, está com um espaço em 'game- ${id}'. Eu imagino que sem o espaço, funcionaria, já que é provável que o identificador do elemento esteja sem o espaço também. Sendo assim, acredito que dessa forma funcionaria 'let gameClicado = document.getElementById(game-${id});'. Depois faz esse teste, por favor, e verifica se vai funcionar agora. Caso não, envia pra gente o repositório do seu projeto que assim a gente dá uma olhada.

Espero ter ajudado, bons estudos e abraços!

Gente!!!

Muito obrigada pela ajuda, realmente era o espaço antes do ${} que estava dando o erro, kkkk como pode né, um espaço, fiquei duas horas revendo o código, kkkk. mas deu tudo certo!! muito obrigada pela ajuda, kkkk