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

Faça como eu fiz: alugando e devolvendo jogos

function alterarStatus(id) {
    let gameClicado = document.getElementById(`game-${id}`);
    let imagem = gameClicado.querySelector('.dashboard__item__img');
    let botao = gameClicado.querySelector('.dashboard__item__button');
   
    if imagem.classList.contains('dashboard__item__img--rented') {
       imagem.classList.remove('dashboard__item__img--rented');
       botao.classList.remove('dashboard__item__button--return');
       botao.textContent = 'Alugar';
    }
    else{
        imagem.classList.add('dashboard__item__img--rented');
        botao.classList.add('dashboard__item__button--return');
        botao.textContent = 'Devolver';
    }
}
1 resposta
solução!

Olá, Henrique, como vai?

A lógica utilizada está correta para alternar o status do jogo entre alugado e disponível. A única inconsistência está na sintaxe da estrutura condicional. Em JavaScript, a condição do if precisa estar entre parênteses. Sem eles, o código gera erro de sintaxe e não será executado corretamente.

A correção é apenas adicionar os parênteses na declaração do if. O restante da lógica de manipulação das classes e alteração do texto do botão está adequado para o objetivo da atividade.

Exemplo com o ajuste aplicado:

function alterarStatus(id) {
    let gameClicado = document.getElementById(`game-${id}`);
    let imagem = gameClicado.querySelector('.dashboard__item__img');
    let botao = gameClicado.querySelector('.dashboard__item__button');
   
    if (imagem.classList.contains('dashboard__item__img--rented')) {
       imagem.classList.remove('dashboard__item__img--rented');
       botao.classList.remove('dashboard__item__button--return');
       botao.textContent = 'Alugar';
    } else {
        imagem.classList.add('dashboard__item__img--rented');
        botao.classList.add('dashboard__item__button--return');
        botao.textContent = 'Devolver';
    }
}

Continue praticando esse tipo de manipulação de classes, pois é uma base importante para interações em interfaces web.

Obrigado por compartilhar sua solução. O fórum segue à disposição sempre que precisar.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!