具有多个文件nodejs的路由

时间:2012-08-12 22:28:42

标签: javascript node.js express

我想在多个文件中路由

var routes=require('./routes');

在routes / index.js

exports.inicio=require('./inicio')
exports.home=require('./home')
inicio.js中的

exports.index=function(req,res){res.render('index/index',{title: 'Bienvenido a Inmoweb'});}
在home.js中

exports.nosotros=function(req, res){res.render('index/nosotros',{title:'Nosotros'});}

当我在console.log(路由)

{
inicio: {index:[function]}, 
home: {nosotros:[function]}
}

所以我在app中打电话

app.get('/',routes.inicio.index);

但我想这样打电话

app.get('/',routes.index);
app.get('/nosotros',routes.nosotros);

,console.log就是????

{
  index:[function], 
  nosotros:[function]
}

怎么做? tnx all

1 个答案:

答案 0 :(得分:5)

您的routes/index.js可以执行以下操作:

exports.index = require('./inicio').index
exports.nosotros = require('./home').nosotros

您可以直接指定module.exports中的inico.js来缩短时间:

module.exports = function(req,res){res.render('index/index',{title: 'Bienvenido a Inmoweb'});}

现在,您可以在routes/index.js中执行此操作:

exports.index = require('./inicio') //See the difference? 
// require('./inicio') now directly exports your route
exports.nosotros = require('./home').nosotros

明白了吗? :)