【问题标题】:How can I use if statement in ejs?如何在 ejs 中使用 if 语句?
【发布时间】:2017-05-03 07:16:36
【问题描述】:

我有一个页面,可以制作一个 foreach 并显示一些这样的照片

<% imgs.forEach(function(img) { %>
      <img src="uploads/<%=user.username%>/screenshots/<%= img %>">
 <% }); %>

我想要做一个 if 语句,因为如果没有照片显示会给出这样的消息:

“没有上传照片”

【问题讨论】:

    标签: javascript html node.js express ejs


    【解决方案1】:

    类似这样的:

    <% if(imgs.length > 0){ %>
        <% imgs.forEach(function(img) { %>
            <img src="uploads/<%=user.username%>/screenshots/<%= img %>">
        <% }); %>
    <% } else{ %>  
        <p>no photos uploaded</p>
    <% } %>
    

    Reference

    【讨论】:

    • 这很好用,但 ejs 是否支持嵌套 if else 循环?
    • @xetryDcoder 我没有尝试过,但它的工作方式应该与单个 if-else 的工作方式相同。如果您遇到任何问题,请告诉我。
    【解决方案2】:

    简写是正确的,但确实有语法错误

    <%= role === 'admin' ? 'Super Admin' : 'Admin' %>
    

    或者

    <% if(role === 'admin'){ %>
        <p>Super Admin</p>
    <% } else{ %>
        <p>Admin</p>
    <% } %>
    

    【讨论】:

      【解决方案3】:

      是的,这里是简写版:

      &lt;%= role == 'A' ? 'Super Admin' : ? 'Admin' %&gt;

      【讨论】:

        【解决方案4】:

        {{#if 角色 }}

        没有上传照片

        {{/如果}}

        【讨论】:

        • 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-09-24
        • 2017-08-30
        • 1970-01-01
        • 2020-01-02
        • 2015-01-26
        相关资源
        最近更新 更多