具有多个文件nodejs的路由

and*_*a86 2 javascript node.js express

我想在多个文件中路由

var routes=require('./routes');
Run Code Online (Sandbox Code Playgroud)

在routes/index.js中

exports.inicio=require('./inicio')
exports.home=require('./home')
Run Code Online (Sandbox Code Playgroud)

在inicio.js

exports.index=function(req,res){res.render('index/index',{title: 'Bienvenido a Inmoweb'});}
Run Code Online (Sandbox Code Playgroud)

在home.js

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

当我console.log(路线)

{
inicio: {index:[function]}, 
home: {nosotros:[function]}
}
Run Code Online (Sandbox Code Playgroud)

所以我打电话给应用程序

app.get('/',routes.inicio.index);
Run Code Online (Sandbox Code Playgroud)

但我想这样打电话

app.get('/',routes.index);
app.get('/nosotros',routes.nosotros);
Run Code Online (Sandbox Code Playgroud)

和console.log supose是????

{
  index:[function], 
  nosotros:[function]
}
Run Code Online (Sandbox Code Playgroud)

怎么做???tnx全部

rdr*_*rey 5

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

exports.index = require('./inicio').index
exports.nosotros = require('./home').nosotros
Run Code Online (Sandbox Code Playgroud)

您可以直接分配到以下内容module.exports,使其更短inico.js:

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

现在你可以这样做routes/index.js:

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

明白了吗?:)