我正在尝试重用EJS中的视图。它只是创建数据库查询结果的列表。我的代码是
<ul data-role="listview" data-theme="a">
<% for(var i=0; i<records.length; i++) { %>
<li><a href="#actions" onClick="SetCurrentCustomer(<%= records[i].ID %>)">
PROBLEM HERE----> <%= records[i].Name %> <%= records[i].TOJ%></a></li>
<% } %>
</ul>
我只想显示每个记录[i] .Name和记录[i] .TOJ,如果它们被定义,或者视图是从某个路线调用的,还是更容易的。我试过插入一个过滤函数,但它被忽略了。我怎么能这样做?
答案 0 :(得分:3)
与for
一样,您也可以在EJS中使用if
:
<% if (someCondition) { %>
<%= records[i].Name %> <%= records[i].TOJ %>
<% }; %>
或者,如果您只是想在未定义属性时阻止显示undefined
,您可以使用:
<%= records[i].Name || '' %> <%= records[i].TOJ || '' %>
(请注意,对于包含数字0
或布尔值false
)的属性,这会失败