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

Problemas na construção das Rotas

Seguindo os passos das aulas estava montando meu projeto até que num determinado ponto tive um problema na definição da rota, ao dar um app.get(...) o node me retorna a seguinte tela de erro: "app.get('/produtos', function(req,res){ ^

TypeError: Cannot read property 'get' of undefined at module.exports (C:\Users\thpfo\OneDrive\Documentos\Alura\Nodejs\teste-node\casadogcodigo\app\routes\produtos.js:2:8) at Object. (C:\Users\thpfo\OneDrive\Documentos\Alura\Nodejs\teste-node\casadogcodigo\app.js:3:53) at Module._compile (module.js:573:30) at Object.Module._extensions..js (module.js:584:10) at Module.load (module.js:507:32) at tryModuleLoad (module.js:470:12) at Function.Module._load (module.js:462:3) at Function.Module.runMain (module.js:609:10) at startup (bootstrap_node.js:158:16) at bootstrap_node.js:598:3 "

SEGUE O CODIGO:

produtos.js

module.exports = function(app){
    app.get('/produtos', function(req,res){
      /*var mysql = require('mysql');
      var connection = mysql.createConnection({
            host : 'localhost',
            user : 'root',
            password : 'root',
            database : 'casadocodigo_nodejs'
        });

        connection.query('select * from livros', function(err, results){
            res.send(results);
        });

        connection.end();
    });*/
    res.render("produtos/lista");
  });
}

app.js

var configura = require ('./config/express');
var app = configura();
var rotasProdutos = require('./app/routes/produtos')();

app.listen(3000,function(){
    console.log("servidor rodando");
});

express.js

var app = require('express')();
app.set('view engine','ejs');
app.set('views','./app/views');

module.exports = function() {
    return app;
}
3 respostas
solução!

Acho que essa linha

var rotasProdutos = require('./app/routes/produtos')();

deveria ser assim:

var rotasProdutos = require('./app/routes/produtos')(app);

Fala ai Tiago, concordo com o Alberto, acho que fazendo tal modificação seus problemas devem ser resolvidos.

Vou tentar esta correção mas mudei de ambiente, vou trabalhar no linux agora porque tava uma dor de cabeça configurar o mysql no windows. Obrigado pela resposta!