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

[Projeto] Desafio criar o jogo de challenge " Sortear-o-amigo-secreto"

Estou tendo dificuldade ja crieEstou com dificuldade, criei meu projeto, mas no momento que vou executar o jogo só consigo digitar o nome na caixa de entrada e dali não consigo avançar, clico em adicionar e nada mais acontece, já revi cada código várias vezes e não encontrei o erro, alguém pode me ajudar, por favor, estou preso nessa parte!

// criar lista zerada
let amigos = [];

//capturar valor no campo de entrada
function adicionarAmigos(){
let amigo = document.querySelector('input').value;
//validação da entrada do valor no campo
console.log (amigo);
// condição ao incluir o nome e alerta de erro
if (amigo ==""){
alert("por favor, insira um nome.");
}else {
//atualize a lista de amigos
amigos.push(amigo);
console.log(O amigo ${amigo} foi adicionado na lista, amigos);
//limpar campo de entrada
document.querySelector("input").value = "";
atualizarListaDeAmigo();
}
}

function atualizarListaDeAmigos(){
//obter elemento da lista
let lista = document.getElementById("listaAmigos");
//limpar a lista existente
lista.innerHTML ="";
//loop para percorrer a lista
for(i = 0; i < amigos.length; i++){
let li = document.createElement("li");
li.textContent = amigos[i];
// adiciona elementos a lista amigos
lista.appendChild(li);
}
}
//verificar se a lista amigos não está vazia
function sortearAmigo(){
if(amigos.length == 0){
console.log('esta lista esta vazia');
}else{
//geração de um indice aleátorio
let random = Math.floor(Math.random() * amigos.length);
//usa o indice aleatorio para acessar o nome correspondente na lista
console.log(amigos[random]);
exibirNaTela("resultado", O amigo secreto Sorteado foi: ${amigos[random]})
amigos = [];
atualizarListaDeAmigos();
}
}
//mostra o resultado
function exibirNaTela(tag,text){
let campo = document.getElementById(tag);
campo.innerHTML = texto;
}

2 respostas
solução!

Olá Edismar! Tudo joia?

Parece que você está bem próximo de fazer seu projeto funcionar. Vamos dar uma olhada em alguns pontos que podem estar causando o problema.

  1. Função atualizarListaDeAmigo: Você chamou a função atualizarListaDeAmigo() na função adicionarAmigos(), mas a função que você definiu é atualizarListaDeAmigos() (com um "s" no final). Certifique-se de que os nomes das funções estão corretos.

  2. Erro de digitação na função exibirNaTela: Na função exibirNaTela, você está usando texto em vez de text na linha campo.innerHTML = texto;. Deve ser campo.innerHTML = text;.

  3. Verifique se os elementos HTML existem: Certifique-se de que você tem um elemento <input> para capturar o nome do amigo e um elemento com o ID listaAmigos para exibir a lista de amigos. Além disso, você precisa de um elemento com o ID resultado para mostrar o amigo secreto sorteado.

  4. Eventos de clique: Certifique-se de que você tenha atribuído corretamente os eventos de clique aos botões de adicionar e sortear. Por exemplo:

    document.getElementById('botaoAdicionar').addEventListener('click', adicionarAmigos);
    document.getElementById('botaoSortear').addEventListener('click', sortearAmigo);
    

    Substitua 'botaoAdicionar' e 'botaoSortear' pelos IDs reais dos seus botões.

Com essas correções, seu projeto deve começar a funcionar como esperado.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.

Obrigadasimo essas corresçãoes me ajudaram muito muito agara esta funcionando,
valeu!