res.render (node.js) 中的 locals 是什么意思?

What is meaning of locals in res.render (node.js)?

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

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

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

什么时候使用哪一个?谁能帮我解决这个问题。

向视图传递变量的正确方法是wollowing

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

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

例如,如果您有一个用于身份验证的中间件,您甚至可以在请求到达您的路由之前设置身份验证变量。

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