Copiei código certinho, mas fica dizendo que o forEach não é uma função
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Copiei código certinho, mas fica dizendo que o forEach não é uma função
Oi Gabriel, tudo certo?
Normalmente isso acontece pois a variável que você está tentando dar o forEach não é um array.
Você pode mandar seu código aqui para eu conseguir te auxiliar melhor? Se for vários arquivos, pode subir no drive ou no github mesmo.
Abraços, bons estudos =)
https://drive.google.com/drive/folders/1nS94YS13SPOrbFv4drM3P2PjkWiEIF6f?usp=sharing
Ai está o link do projeto todo, mas o que foi alterado mesmo, foi no cliente-service.js, lista-Clientes.js, cadastra-Cliente-controller.js e lista-Cliente.html
Oi Gabriel, tudo certo?
Rodei o seu código aqui e consegui fazer o cadastro certinho do cliente e a listagem! Você poderia mostrar aonde está apontando erro? Em qual parte, ou linha do código exatamente?
Fico no aguardo, abraços =)
Gabriel, bom dia.
Conforme a Giovanna havia informado, o erro está ocorrendo pois a variável não é um array e o forEach é o método de Array. Assim como ocorreu com você, meu navegador também retornou que o forEach não era uma função.
Segue a solução:
Você pode converter a variável para um array utilizando "Array.from(variavel).forEach(..)"
No meu caso o problema aconteceu ao chamar o listaClientes() e utilizar o .then().
O código ficou assim:
.then(data => {
Array.from(data).forEach(elemento => {
tabela.appendChild(criaNovaLinha(elemento.nome, elemento.email))
})
Gabriel,
apesar da solução acima ter eliminado o erro no console, não resolveu meu problema para que os dados do cliente fossem carregados.
Ontem estava funcionando como na aula e hoje ocorreu este problema. A solução foi habilitar o json server novamente utilizando "json-server --watch db.json" no terminal.
Após habilitar o servidor eu voltei o código para o que foi usado na aula e funcionou novamente.
Fala Gabriel, provavelmente ocorreu porque você executou o json server no diretório errado no terminal.
Escrevi sobre minha solução aqui: