在html

时间:2016-07-02 07:33:51

标签: node.js express

我在web.js中有一个局部变量:

var app = express();
app.locals.userName;

当我渲染此页面时:

app.get('/finish', function(req, res){
  res.render('finish');
});

我需要在finish.handlebars中使用userName的实例:

<div class="page-header">
<h3>FINISHED</h3>
<script src="https://cdn.firebase.com/js/client/2.4.2/firebase.js"></script>
<script src="https://www.gstatic.com/firebasejs/3.1.0/firebase.js"></script>
<script>
    rootRef = new Firebase('MyFireBases');
    currentMessageRef = rootRef.child('BusinessName');
    currentMessageRef.set(userName);
</script>
</div>

但它似乎不知道finish.handlebars中的userName是什么......

2 个答案:

答案 0 :(得分:0)

试试吧

res.locals = app.locals;

如果您需要访问所有app.locals而不像上面那样绑定,那么您必须将res.locals和app.locals对齐在一起。

{{1}}

我认为中间件是最适合它的地方。

答案 1 :(得分:0)

使用{{ VAR }}扩展了手柄变量,我不会在您的模板中看到它。

请改用:

currentMessageRef.set('{{ userName }}');

(这假定userName不包含单引号字符。)