我在node.js ejs模板中遇到了一个问题。 这是快递代码。
app.get('/course',function(req,res){
var locals = {};
locals.course = {
title: 'data.title',
city: 'data.city',
desc: 'data.desc',
id: 'data._id'
};
res.render('course_description',locals );
});
这是模板代码
<div >
<article>
<% if(locals.course) { %>
<div><% locals.course.title %></div>
<div><% locals.course.city %></div>
<div><% course.city %></div>
<div><% course.title %></div>
<% } %>
</article>
</div>
当res.render('course_description',本地人);触发后,本地数据应传递给模板,但由于某些未知原因,它不适用于此示例。
我得到的只是4空<div >
<article>
<div></div>
<div></div>
<div></div>
<div></div>
</article>
</div>
以前有人遇到过这个问题吗,我很困惑,之前我做过一些工作的例子,但是当我把它与其他工作的比较时,我仍然找不到原因。
注意,我正在使用最新的ejs并表达
答案 0 :(得分:2)
<% ... %>
用于代码构造,不用于输出。
试试这个:
<div>
<article>
<% if (locals.course) { %>
<div><%= locals.course.title %></div>
<div><%= locals.course.city %></div>
<div><%= course.city %></div>
<div><%= course.title %></div>
<% } %>
</article>
</div>