跳到主要内容
CNode

在请求处理里面赋值的req.session.user 在ejs里要怎么才能拿到

社区
Zzizihjk发布于 13 年前最后回复 12 年前
10123740

在请求处理里面赋值的req.session.user 在ejs里要怎么才能拿到啊?req、 session、 request都说没undefied??

查看回复

回复 (10)

K
kvkens#1012 年前

楼上的,你回的是坟贴哦。

H
huawumingguo#912 年前

res.locals.errmsg = req.session.errmsg; 界面是直接<%= errmsg%>

一般来说,可以这样写,类似一个拦截器,注意要写在路由的前面: app.use(function(req, res, next){ res.locals.errmsg = req.session.errmsg; next(); }); app.use('/', routes);//路由

如果路由写在前面了,就不成了,

当然,你也可以每次请求的时候,都写上 res.locals.errmsg = req.session.errmsg; 这样ejs就能拿到。

Z
zizihjk#813 年前
引用 czingres.locals

@yimity 哦谢谢你,(对了,cnode好像没有回复提示?)

Y
yimity#713 年前
引用 czingres.locals

看了下文档,这个确实好用。

Z
zizihjk#613 年前
引用 czingres.locals

在页面 怎么拿?

Z
zizihjk#513 年前
引用 yimityrender 的时候要把这个参数传进去才行。

@yimity 那我要在页面根据时否登录 做不同的显示呢?

C
czing#413 年前

res.locals

Y
yimity#313 年前
引用 yimityrender 的时候要把这个参数传进去才行。

@zizihjk 在 route 的时候就判断是否登录。

Z
zizihjk#213 年前
引用 yimityrender 的时候要把这个参数传进去才行。

那我要在页面判断是否登录了,如果有很多页面不是要传很多次

Y
yimity#113 年前

render 的时候要把这个参数传进去才行。

参与回复

登录后即可参与回复。登录