【问题标题】:How to array of objects in template ejs?如何在模板 ejs 中创建对象数组?
【发布时间】:2015-05-25 07:15:25
【问题描述】:

我有一个结果变量,它是一个对象数组。我将结果变量从我的 javascript 文件传送到我的主路由文件。我正在尝试渲染我的页面以显示模板 ejs 文件中每个对象的列表。我能够很好地列出所有内容,但是列表以 [object object] 的形式出现,而不是对象中的实际单词。如何让它在我的模板文件中显示为字符串?

这是我的路线文件:

app.get('/announcement', function(req,res){
        var getAnnouncements = require('../public/javascripts/announcement.js'); //Load the module, get the name of the script file

        //define the functions here
        var onSpreadsheetSuccess = function (results) { //result is announcementArray

            //add results list to template);
            res.render('announcement', {title: "Announcement page", results: results});

        }

        getAnnouncements.loadSheet(onSpreadsheetError, onSpreadsheetSuccess); //call the function from script with the parameters passed

})

这就是我在模板 ejs 文件中所做的:

<ul>
    <% results.forEach(function(result){ %>
        <li><%= result %></li>
    <%  }); %>
</ul>

【问题讨论】:

  • 你解决了吗?我也面临类似的问题!!!运行时出现数组未定义错误

标签: node.js express ejs


【解决方案1】:
<ul>
    <% for(var i=0; i<results.length; i++) { %>
        <li>
            <%= results[i] %>
        </li>
    <% } %>
</ul>

【讨论】:

    【解决方案2】:

    我的回答如下。我从其他人的答案中更改了一行。

    <ul>
    <%for (var result in results){%>
      <li><%=result%>:<%=results[result]%></li>    
      <%}%>
    </ul>
    

    【讨论】:

      【解决方案3】:

      这将显示您的结果的 id 列表,只需根据您想要显示的对象的属性更改 _id。

       <ul> 
        <% results.map((result)=>{ %>
          <li>
              <%= result._id %>
          </li>
        <% }) %>
       </ul>
      

      【讨论】:

        【解决方案4】:

        试试这个:

        <ul>
             <%for (var result in results){%>
                        <li><%=result%></li>    
                <%}%>
        </ul>
        

        【讨论】:

        • 这给了我同样的结果。
        猜你喜欢
        • 1970-01-01
        • 2020-08-15
        • 2016-10-05
        • 1970-01-01
        • 2022-10-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-03-27
        相关资源
        最近更新 更多