【发布时间】:2021-06-18 12:16:50
【问题描述】:
抱歉标题措辞不佳,我不确定最好的措辞方式,我认为用代码来解释会更容易。所以可以说我有以下内容:
router.get('/chest', (req, res)=>res.render('muscles/chest/chest', {login: req.isAuthenticated(), user: req.user}));
router.get('/abs', (req, res)=>res.render('muscles/abs/abs', {login: req.isAuthenticated(), user: req.user}));
router.get('/biceps', (req, res)=>res.render('muscles/biceps/biceps', {login: req.isAuthenticated(), user: req.user}));
router.get('/frontdeltoids', (req, res)=>res.render('muscles/frontdeltoids/frontdeltoids', {login: req.isAuthenticated(), user: req.user}));
router.get('/quadriceps', (req, res)=>res.render('muscles/quadriceps/quadriceps', {login: req.isAuthenticated(), user: req.user}));
在我的 layout.ejs 文件中,我有:
<% if (login) { %>
<li class="nav-item">
<a class="nav-link" href="/users/profile/<%= user.id%>"><span class="fas fa-user"></span> Profile</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/users/logout"><span class="fas fa-sign-in-alt"></span> Logout</a>
</li>
有没有更好的方法来做到这一点,而不是必须将“登录:req.isAuthenticated(),用户:req.user”添加到我拥有的所有内容中,所以我的 layout.ejs 文件没有给我未定义的登录错误?
【问题讨论】:
-
我认为您可以制作一个中间件来进行身份验证。 stackoverflow.com/q/47515991/14032355
标签: javascript node.js express ejs