我正在尝试使用 ejs 将消息对象传递给模板。我的路线代码如下:
app.get('/', function(req, res) {
res.render('index.ejs', {message: 'A message'});
});
在我的 ejs (index.ejs) 文件中,我有:
<% if (message) { %>
<div class="alert alert-danger"><%= message %></div>
<% } %>
但是,当我根本不传递对象(不仅仅是message: ""
)时,它会返回以下错误:
ReferenceError: /Users/Documents/node/views/index.ejs:13
11| <body>
12| <div class="container">
>> 13| <% if (message) { %>
14| <div class="alert alert-danger"><%= message %></div>
15| <% } %>
16| <div class="jumbotron text-center">
message is not defined
同样,如果我尝试if(message.length > 0)
,但这只会给我同样的错误。我认为if
声明的全部意义在于 ifmessage
不存在,它只是跳过。message
如果没有传递消息对象,或者我每次都必须传递一个空对象,我怎样才能让 ejs 不呈现任何内容?