我最近尝试使用Express,我发现它有点困难,我尝试在app.js文件中定义路由,并在require到index.js之后,当我尝试浏览到localhost:3000 / route时我仍然收到此错误
query.js文件
exports.show = function(reg,res){
res.render("test",{title:"query testing"});
};
我在app.js中试过这个
app.get('/query',require('./routes/query.js'));
并在index.js
var queryX = require('./query.js');
app.get('/query',queryX.show);
我在github上尝试了路由分离的例子,我也得到了一个错误
为什么我不能让这个工作?
解决方法:
app.js:
var site = require('./routes/site.js');
app.get('/', site.index);
路线/ site.js:
module.exports = function(req, res) { ... };
如果要使用routes / index.js存储所有路由,则必须将app传递给导出的函数.
就像是:
app.js:
var express = require('../..')
, app = express();
require('./routes')(app);
路线/ index.js:
var more_routes = require('./more_routes');
module.exports = function(app) {
app.get('/', function(req, res){...});
app.get('/show', more_routes.show);
app.get('/list', more_routes.list);
}