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

(BUG) Não consigo encontrar o erro no meu codigo, o botão reiniciar não funciona

let numeroSecreto = gerarNumeroSecreto();
let numeroTentativas = 1;

function exibirTextoTela (tag, texto) {
    let campo = document.querySelector(tag);
    campo.innerHTML = texto;
};

function exibirMensagemInicial() {


exibirTextoTela('h1', 'Novo Jogo do Número Secreto');
exibirTextoTela('p', 'Escolha um número entre 1 e 10:');
}

exibirMensagemInicial();

function verificarChute() {
    let valorChute = document.querySelector('input').value;
    
    
    if (numeroSecreto == valorChute) {
        exibirTextoTela('h1', 'Parabéns!');
        let palavraTentativa = numeroTentativas > 1 ? 'tentativas' : 'tentativa';
        let mensagemTentativa = `Você acertou o Número Secreto com ${numeroTentativas} ${palavraTentativa}.`;
        
        exibirTextoTela('p', mensagemTentativa);
        document.getElementById('reiniciar').removeAttribute('disabled');
    } else if (numeroSecreto > valorChute) {
        exibirTextoTela('p', 'O Número Secreto é maior.');
    } else {
        exibirTextoTela('p', 'O Número Secreto é menor.');
    }
    numeroTentativas++;
    limparCampo();
    
}

function gerarNumeroSecreto() {
    return parseInt(Math.random() * 10 + 1);
}

function limparCampo() {
    valorChute = document.querySelector('input');
    valorChute.value = '';
    
}

function reiniciarJogo() {
    numeroSecreto = gerarNumeroSecreto();
    exibirMensagemInicial();
    limparCampo();
    numeroTentativas = 1;
    
}

HTML

<div class="container">
    <div class="container__conteudo">
        <div class="container__informacoes">
            <div class="container__texto">
                <h1></h1>
                <p class="texto__paragrafo"></p>
            </div>
            <input type="number" min="1" max="10" class="container__input">
            <div class="chute container__botoes">
                <button onclick="verificarChute()" class="container__botao">Chutar</button>
                <button onclick="reiniciarJogo()" id="reiniciar" class="container__botao" disabled>Novo jogo</button>
            </div>
        </div>
        <img src="./img/ia.png" alt="Uma pessoa olhando para a esquerda" class="container__imagem-pessoa" />
    </div>
</div>




<script src="app.js" defer></script>

1 resposta
solução!

Bom dia Alexandre, vou tentar ajudá-lo:

Primeiro corrija esta linha, está faltando uma abertura de chaves depois deste else:

// está assim:
} else if (numeroSecreto > valorChute) {

// precisa ficar assim:
 } else {
        if (chute > numeroSecreto) {

Agora, coloque um fechamento de chaves aqui (deixei sem indentação pra mostrar o local, mas faça a indentação, pro código ficar bem organizado):

limparCampo();
} }

E por último, acrescente um setAttribute() dentro da sua function reiniciarJogo():

function reiniciarJogo() {
    numeroSecreto = gerarNumeroSecreto();
    exibirMensagemInicial();
    limparCampo();
    numeroTentativas = 1;
    // acrescente esta linha aqui embaixo:
    document.getElementById('reiniciar').setAttribute('disabled', true);
}

Pronto, agora é só testar!