2
respostas

correção do projeto

Eh, tinha feito alguma coisa errada, tinha colocado a função no botão, pedindo para digitar o nome, simulando um registro, isso na hora de alugar o jogo, como na hora de devolver, o engraçado, é que quando o botão estava para alunar, tudo corria bem, mas na hora que o botão muda para devolvedor, não estava indo, a ponto de ter um Aneurisma cerebral, percebi, que era somente o nome na condição do "if" que era devolver, ao invés de Devolvedor, acertei, e deu certo o que eu queria, segue o código.

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

let nomePessoa = prompt("Qual é o seu nome?"); 
if (botao.textContent === "Alugar") {
    botao.textContent = "Devolver";
    alert(`Tudo bem ${nomePessoa}, já pode pegar o jogo ${nomeJogo.textContent}`);
} else if (botao.textContent === "Devolvedor") {
    botao.textContent = "Alugar";
    alert(`Tudo bem ${nomePessoa}, obrigado por devolver o jogo ${nomeJogo.textContent}`);
}

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

}

2 respostas

Tenho duas sugestões:

  1. Inserir uma validação no nome para que impeça de o usuário prosseguir com o nome vazio Segue uma sugestão de código de validação de nome:

let nomePessoa = prompt("Qual é o seu nome?"); if (!nomePessoa) { alert("Por favor, insira seu nome."); return; } observe que o "return" vai retornar se o nome não foi inserido.

  1. Refatorar o código para que não fique muito extenso e complexo, por exemplo: dividir fuincionalidade em funções mais pequenas e específicas, isso vai manter o código mais fácil de compreender.

bom dia meu amigo, muito obrigado pela sugestão, vou fazer, em relação as funções, ainda não tenho domínio técnico para pensar em códigos mais limpos, mas vou fazer aqui, e volto a postar para saber se ficou bom, mais uma vez obrigado meu amigo, forte abraço...