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

Erro ao subir o cliente

const criaNovaLinha = (nome, email) =>{
    const linhaNovoCliente = document.createElement("tr")
    const conteudo =`
        <td class="td" data-td>${nome}</td>
        <td>${email}</td>
        <td>
            <ul class="tabela__botoes-controle">
                <li><a href="../telas/edita_cliente.html?id=${id}" class="botao-simples botao-simples--editar">Editar</a></li>
                <li><button class="botao-simples botao-simples--excluir" type="button">Excluir</button></li>
            </ul>
        </td>
        `
    linhaNovoCliente.innerHTML = conteudo
    return linhaNovoCliente
}

const tabela = document.querySelector("[data-tabela]")

const http = new XMLHttpRequest()

http.open("GET", "http://localhost:3000/profile")

http.send()

http.onload = () =>{
    const data = JSON.parse(http.response)
    data.forEach(elemento => {
        tabela.appendChild(criaNovaLinha(elemento.nome, elemento.email))
    })
}

Imagem do Erro: https://imgur.com/B6feUAW

3 respostas

Fala ai Luis, tudo bem? O problema está nesse trecho html?id=${id} você está tentando ler o valor de uma variavel chamada id que não foi declarada, ou seja, a mesma não existe no seu código.

Espero ter ajudado.

Se eu entendi correto ele está lendo do arquivo db.json, certo?

Esse é o arquivo que o professor passou:

{
  "profile": [
    {
      "nome": "felipe",
      "email": "felipe@alura.com",
      "id": 1
    }
  ]
}

E eu não mexi nele, porque não lê a variável id?

solução!

Oi Luis blz,

Nessa parte do curso vamos mostrar só nome e email, por enquanto não trabalhamos com o id, se você remover o ?id=${id} o código vai voltar a carregar normalmente.