有条件地显示EJS数据

Conditionally Displaying EJS data

本文关键字:数据 EJS 显示 有条件      更新时间:2023-09-26

我正在尝试在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]。名称和记录[i]。TOJ,如果它们被定义了或者视图是从某个路由调用的或者其他更容易的。我试过插入一个函数来过滤,但它被忽略了。我该怎么做呢?

for一样,您也可以在EJS中使用if:

<% if (someCondition) { %>
  <%= records[i].Name %> <%= records[i].TOJ %>
<% }; %>

或者,如果你只是想防止undefined显示当一个属性没有定义时,你可以使用这个:

<%= records[i].Name || '' %> <%= records[i].TOJ || '' %>

(注意,对于包含数字0或布尔值false的属性,这将失败)