1

expressがビューを見つけることができない場合、エラーが発生し、(デバッグモードで)見栄えの良いページがレンダリングされます。そのビューを自分のエラーメッセージに再利用する便利な方法はありますか?

4

1 に答える 1

1

ビューを再利用する方法はわかりませんが、error.stack を使用してスタック トレースをレンダリングできます。

私はこのようなものを持っています:

app.all( '*', function(req, res){
  var code = 404;
  res.local('error', { type: 'http', code: code });
  res.local('code', code );
  res.render('errors/index', { status: code } );
});

app.error(function(err, req, res, next){

  var code;

  if( err.type === 'http' ){
    code = err.error;
  } 
  else {
    code = 500;
  };

  if(err){
    res.local('stack', err.stack || JSON.stringify(err, null, 2) );
  };

  res.local('code', code );
  res.render('errors/index', { status: code } );

});

404 のように手動で設定する必要がある場合は、ビューで次のようにします。

next( {type:'http', error: 404} );

それが私のビューに型チェックがあるところです。

于 2012-05-11T17:38:06.637 に答える