我想使用 res.locals 创建一个 dynamicHelper 。例如:
res.locals.someHelper = function(arg){
Model.find(arg, function(err, docs){
return docs;
});
}
好吧,我会在任何视图中使用它。例如:
- each item in someHelper(arg)
= item
不要在视图助手中进行异步调用。您应该在调用视图渲染之前准备好所有这些异步数据,这样您就可以同步使用它们。
为此,您可以在路由器中使用异步模块。
async.parallel({
name: function (callback) {
Model.find(arg, callback);
},
age: function (callback) {
Model.find(arg, callback);
}
}, function (err, results) {
for (var i in results) {
res.local[i] = results[i];
}
return next();
});