有个关于app.locals赋值的问题请教下大神:
发布于 8 年前 作者 IfAaron 4155 次浏览 最后一次编辑是 7 年前 来自 问答

1.大概逻辑就是在登陆的时候,把user对象保存到session里面,并跳转到首页,然后再首页里面,通过req.session.user获取这个user对象,并且赋值给app.locals,最后在页面的header里面根据user是否存在,来判断前端显示“注册/登陆”还是显示“welcome userName”,下面是具体代码 1) 1.png 2) 2.png 3) 3.png 4) 4.png

4 回复

用res.locals

@Neil-UWA 刚刚试了下,果然有用,但是为什么会出这种问题啊,

jade会自动读取res中的Locals的,而不是app的,况且 user的信息也不应该存放在app.locals中。

@Neil-UWA 嗯嗯,又去仔细查了下jade,一半session里面的信息确实是放到res里面的,谢谢大神指教。昨晚又发现一个新问题,忙了好久都不知道怎么弄,我是表单里面放了一个隐藏域,放的对象的id属性,是在post请求时用来区分新建还是更新对象的,然后一直报那个异常,google了一下,都说是body-parser中间件没有安装,可是我明明安装了 异常截图: untitled1.png

回到顶部