Express.js 2.5.8 を使用しています。重複を減らすために、動的ヘルパーを使用して、一般的に使用されるオブジェクトを各ルート内で明示的にレンダリングせずにビューに渡すことを検討しています。
ビューに向かう途中で地元の人々を傍受する方法についてソースを調べましたが、あまり成功していません. app.dynamicViewHelpers オブジェクトをチェックすることで、それらの存在を確認できる可能性があります。ただし、これを実現する実装依存の少ない方法があるかどうかを知りたいです。
理想的な解決策は、値とオブジェクトがどのようにビューに渡されるかにとらわれないことです。それらがviewHelper、ミドルウェア、またはルート自体からのものであるかどうかにかかわらず、テストは変更なしで合格するはずです。とにかくそれが理想です。他のアプローチで解決します。
私がテストしようとしているものの緩い例:
app.dynamicHelpers({
example : function(req, res){
return "Example Value";
}
});
app.get('/example', function(req, res){
res.render('example-view', {
sample : "Sample Value"
});
});
// test that example === "Example Value" in the view
// test that sample === "Sample Value" in the view