node.js - Express:为所有模板传递变量

标签 node.js express

我尝试将变量传递给所有模板。在 app.js 中我写道:

app.use(function(req, res, next){
       res.locals.token = '1234';
       next();
   });

但是如果我尝试在模板中获取我的变量,例如

span= token

我得到一个错误 = 'token is not defined'。 怎么了?

我使用 Express 3.2

最佳答案

问题可能与您放置该函数的 app.js 中的位置有关。它必须在路由中间件之前,否则不会被调用。

假设你的 app.js 文件有这样一行:

app.use(app.router)

那么你的函数需要放在这之前。

关于node.js - Express:为所有模板传递变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16038984/

相关文章:

node.js - 我如何使用nodejs selenium webdriver设置elementScrollBehavior功能

javascript - DELETE api 请求响应 404 错误

javascript - 如何使用 MongoDB 更改数组的顺序?

node.js - Socket.io 可以在本地主机上运行,​​但不能在 Heroku 上运行

node.js - 处理输入文件后让 Node.js 与数据库断开连接的正确调用顺序

database - 使用像 redistogo.com 这样的服务的优缺点?

javascript - 服务器不渲染 ejs 文件

ajax - 使用 Express 检测 NodeJS 上的 AJAX 请求

javascript - res.render() 后手写笔未应用于我的 Jade 文件

Node.js 用 ejs 显示 mysql 查询