Javascript express 4.0中的_局部变量和局部变量之间的差异
出于某种原因,在我的jade文件中,我可以访问使用_locals而不是locals?设置的文件:Javascript express 4.0中的_局部变量和局部变量之间的差异,javascript,node.js,express,pug,Javascript,Node.js,Express,Pug,出于某种原因,在我的jade文件中,我可以访问使用_locals而不是locals?设置的文件: app.use(function (req, res, next) { if(req.isAuthenticated()) //true { res.locals.user = req.user; }else { res.locals.user = null; } } 翡翠 -console.info(_locals.user); /
app.use(function (req, res, next) {
if(req.isAuthenticated()) //true
{
res.locals.user = req.user;
}else {
res.locals.user = null;
}
}
翡翠
-console.info(_locals.user); //{_id: 5775.....4343}
-console.info(locals.user); //undefined
-console.info(user); //null
\u locals
是Jade在重写变量时使用的内部名称;试试console.info(user)
。耶,好的,我已经更新了这个问题,因为我以前认为它不相关。我觉得这对我来说太具体了,不值得把整个问题都贴出来。但是按照您的建议使用时,如何使用user=null
/我不明白你在问什么。Jade将重写user
,以便它引用\u locals.user
,除非您在模板中定义了名为user
的变量。您的速度太快了,谢谢:)我刚刚意识到我正在通过渲染将user
的变量传递给Jade。我以前没想过。也很抱歉,问题不清楚:)