我正在努力理解express / jade的路由,我看到的所有示例都只有1页index.html,但是如果你的网站有超过1页呢?
在我的/ routes文件夹中我在index.js文件中有以下内容:
exports.index = function(req, res){
res.render('index.jade', { title: 'Home'});
};
exports.sched = function(req, res){
res.render('sched.jade', { title: 'Schedules' });
};
但是,当我尝试打开url时,不会呈现sched.jade页面:/ sched
我做错了什么?
答案 0 :(得分:1)
在您调用node on(通常是app.js或server.js)的文件中,您需要导入路由然后调用这些函数。例如:
var routes = require('routes/');
app.get('/sched', routes.sched);
app.get('/', routes.index);
答案 1 :(得分:0)
如果您使用的是模板,则可能有一个名为' boot.js'的文件,我的文件位于lib文件夹中。该文件包含所有路由信息。我的路由有一个如下所示的开关:
for (var key in obj) {
switch (key) {
case 'show':
method = 'get';
path = '/' + name + '/:' + name + '_id';
break;
case 'index':
method = 'get';
path = '/';
break;
case 'services':
method = 'get';
path = '/services';
break;
default:
throw new Error('unrecognized route: ' + name + '.' + key);
}