我遇到了一个非常基本的问题,但我似乎找不到答案。我正在使用node.js
,express
,我只是尝试将局部变量传递到视图中,如下所示:
app.get('/', function(req, res){
res.render("index", {locals: {
title: "Blog",
}
});
});
我的索引视图同样简单:
h1= title
但由于某种原因,我一直收到这个错误,好像局部变量永远不会传递一样:
500 ReferenceError: /home/spartan/Node_Projects/test/views/index.jade:1 > 1| h1= title 2| title is not defined
> 1| h1= title
2| title is not defined
我不知道我做错了什么!以下是我使用的版本:
有人请帮忙,以便我可以继续学习node + express!
答案 0 :(得分:28)
您应该在没有locals
的情况下传递变量。这可能是Express 3.0.0中的新功能
res.render("index", {title: "Blog"});
答案 1 :(得分:4)
h1 = title尝试在本地评估它,你发送的标题和那个不同。要了解其中的差异,请参阅:
- var title = 'my title' // - allows writing code
h1 = title
你应该使用的是:
h1 #{title}
答案 2 :(得分:1)
Here is a response。它显示了渲染时如何传递数据。 (Express 3.0.0 complient)