res.render(node.js)中的locals的含义是什么?

Node.JS(express + ejs)下面两个代码块有什么区别?

res.render('demo', {locals:{"variable":data}}); 

 res.render('demo', {"variable":data}); 

何时使用哪一个? 任何人都可以帮我解决这个问题。

将variables传递给视图的正确方法是后续

 res.render('demo', {"variable":data}); 

然后你有一个res.locals对象,你可以附加数据,它将被传递给视图。

例如,如果您有一个中间身份validation,您甚至可以在请求到达路由之前设置authvariables。

 app.use(function(req, res, next){ res.locals.user = req.user; res.locals.authenticated = ! req.user.anonymous; next(); });