0

Express / jade のルーティングを理解するのに苦労しています。私が見た例はすべて 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

私は何を間違っていますか??

4

2 に答える 2

1

node を呼び出すファイル (通常は app.js または server.js) で、ルートをインポートしてから関数を呼び出す必要があります。例えば:

var routes = require('routes/');

app.get('/sched', routes.sched);
app.get('/', routes.index);
于 2013-06-30T01:59:49.590 に答える
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);
  }
于 2013-06-30T02:01:58.967 に答える