【发布时间】:2020-06-04 17:36:50
【问题描述】:
我创建了一个基于用户角色的动态菜单栏。在服务器端,当用户登录时,我会将他们所有允许的页面存储在他们的会话中。
现在,我有 15 个模板。我在每一页上都包含了menubar.html 文件。我想在menubar.html 中使用会话数据,而不必每次都显式传递。
我尝试了以下代码:
app.get('/home',function(req,res)){
res.render('home',{menu : req.session.menubar})
}
app.get('/contact',function(req,res)){
res.render('contact',{menu : req.session.menubar})
}
在上面的代码中,我需要在每个页面上传递会话数据。如果我有 50 个 html 模板,那么在每条路由中传递会话效率不高。
处理这个问题的最佳方法是什么?
【问题讨论】:
-
你必须使用 -#{menu}
-
谢谢#Deep。你能描述一下如何使用#{menu}吗?
-
是 req.session.menubar 数组还是字符串?这是一个 json 吗?如果您在问题中分享 req.session.menubar 的值会更好。
-
这样的数组 req.session.menubar = ['/home','/contact']
标签: node.js express ejs node-modules