variables在脚本标记中不可用
我正在使用passportjs在我的快速应用程序上进行用户身份validation。 但是我遇到了一个奇怪的问题:
在我的索引路线中,我使用user参数来渲染index.jade模板
router.get('/', function(req, res, next) { res.render('index', { user: req.user }); });
现在在我的玉模板中,我有以下
block content if user h1 logged in #{user} script var shared_resources.user = user if !user h1 Not logged in
出于某种原因,该用户的条件传递正好在那里。 而且当我打印出用户对象login#{用户}它打印出来的细节罚款。 然而,在脚本标签内,我得到一个未捕获的引用,用户没有定义。 有谁知道这是为什么发生?
您还需要在scrip标签中使用模板string。
script var shared_resources.user = "#{user}"
如果你想embedded对象,你可以尝试以下。
script var shared_resources.user = !{JSON.stringify(user).replace(/<\//g, '<\\/')}