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

Cannot read property 'length' of undefined

Ja vi no forum, e tentei resolver mais não consigo de jeito nenhum, o meu nem exibir da tela o json está, eu uso o ubuntu 16.04 e estou perdido

TypeError: /home/breno/Área de Trabalho/casadocodigo/app/views/produtos/lista.ejs:10
   8|     <td>Preço</td>
   9|  </tr>
>> 10|  <%for(var i=0;i<lista.length;i++){%>
   11| <tr>
   12| <td><%=lista[i].id%></td>  
   13| <td><%=lista[i].titulo%></td>  

Cannot read property 'length' of undefined
   at eval (eval at compile (/home/breno/Área de Trabalho/casadocodigo/node_modules/ejs/lib/ejs.js:491:12), <anonymous>:11:26)
   at returnedFn (/home/breno/Área de Trabalho/casadocodigo/node_modules/ejs/lib/ejs.js:520:17)
   at View.exports.renderFile [as engine] (/home/breno/Área de Trabalho/casadocodigo/node_modules/ejs/lib/ejs.js:374:31)
   at View.render (/home/breno/Área de Trabalho/casadocodigo/node_modules/express/lib/view.js:126:8)
   at tryRender (/home/breno/Área de Trabalho/casadocodigo/node_modules/express/lib/application.js:639:10)
   at EventEmitter.render (/home/breno/Área de Trabalho/casadocodigo/node_modules/express/lib/application.js:591:3)
   at ServerResponse.render (/home/breno/Área de Trabalho/casadocodigo/node_modules/express/lib/response.js:960:7)
   at Query._callback (/home/breno/Área de Trabalho/casadocodigo/app/routes/produtos.js:12:17)
   at Query.Sequence.end (/home/breno/Área de Trabalho/casadocodigo/node_modules/mysql/lib/protocol/sequences/Sequence.js:85:24)
   at /home/breno/Área de Trabalho/casadocodigo/node_modules/mysql/lib/protocol/Protocol.js:399:18
2 respostas

Oi Breno,

Você chegou a dar uma olhada nesta dúvida? => https://cursos.alura.com.br/forum/topico-erro-cannot-read-property-length-of-undefined-24427

Abraço!

solução!

Na verdade eu acho que o treinamento mudou a query de livros pra produtos. Tenta ajustar a query e botar pra select from livros.

connection.query('select * from livros', callback);

A melhor forma de verificar também, seria rodando o mysql -u e tentar listar usando os comando mysql, pra ver se o banco ta no ar, esta acessível, e a tabela esta certa. Outra forma tambem é dando o console.log na função de callback dos errors.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software