Amigos, estou na aula de Fetch API, e após refatorar o código como foi orientado, obtive o seguinte erro:
O meu código está assim: cliente-service.js
// Fetch form: a fetch já faz um GET e entrega uma Promise.
const listaCliente = async ()=>{
return fetch('http://localhost:3000/profile').then(
resposta => {
return resposta.json()
}
)
}
export const clienteService = {
listaCliente
}
listaClientes-controller.js
import { clienteService } from "../service/cliente-service.js"
const criaNovaLinha = (nome, email)=>{
const criaLinhaNovoCliente = 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" class="botao-simples botao-simples--editar">Editar</a>
</li>
<li>
<button class="botao-simples botao-simples--excluir" type="button">Excluir</button>
</li>
</ul>
</td>
`
criaLinhaNovoCliente.innerHTML = conteudo
return criaLinhaNovoCliente
}
//elemento pai no qual vou colocar o elemento filho (através da função criaNovaLinha()) que tem os dados do cliente
const tabela = document.querySelector('[data-tabela]')
clienteService.listaCliente().then(data =>{
// data é um objeto com vários elementos (clientes e seus dados (nome, email))
data.forEach(elemento => {
//criamos uma nova linha para cada elemento, com seus respectivos dados.
tabela.appendChild(criaNovaLinha(elemento.nome, elemento.email))
})
})