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

标签 node.js express ejs

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

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

并且

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

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

最佳答案

将变量传递给 View 的正确方法如下

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

然后你就有了一个对象res.locals,你可以附加数据并将其传递到 View 。

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

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

关于node.js - res.render (node.js) 中的 locals 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32688857/

相关文章:

javascript - react : Prevent click on scrollbar from propagating

node.js - Express 和 Connect npm 包之间的区别

javascript - 如何将数据插入到res.render函数中?

javascript - 在 ejs 文件中调用用户定义的 JavaScript 函数

node.js - 可导出的 Angular "ng-cli"模块

javascript - 如何在Protractor中调用其他测试用例中的公共(public)测试用例

node.js - 如何启动expressjs(nodejs)作为生产模式

javascript - 使用 Notepad++ 在 HTML 文件中突出显示 EJS 语法

javascript - passport.socket.io 无法修复未找到的 session

Node.js:如何保证我们在异步编程中回复正确的请求?