无法访问EJS模板中的深层嵌套对象和数组

时间:2020-03-10 12:49:48

标签: json express ejs traversal

您好堆高车,

我试图让the following response进入我的EJS模板。 目前,我有一个for循环,可迭代所有campaigns

campaigns.facebook.data [i] .insights .data

只需尝试一下,它就可以正常工作,并且输出如下所示:

<% switch (campaigns.facebook.data[i].status) {
        case 'ACTIVE' : %>
            <div class="ui grid">
              <p><%- JSON.stringify(campaigns.facebook.data[i].insights) %></p>
                ...

enter image description here

但是,在尝试获取.data对象时,我遇到了问题

<p><%- JSON.stringify(campaigns.facebook.data[i].insights.data) %></p>

enter image description here

即使尝试JSON.stringify(campaigns.facebook.data[i].insights.data[0])也不会带来任何运气。这里可能有什么问题?

1 个答案:

答案 0 :(得分:1)

添加条件语句以检查所需对象是否存在后,我们将再也不会遇到undefined error

<% if (campaigns.facebook.data[i].insights) { %>
     <p><%- JSON.stringify(campaigns.facebook.data[i].insights.data[0]) %></p>
     <%console.log(campaigns.facebook.data[i].insights.data[0])%>
% } %>