如何在Ervers Handlebars中阵列内的对象内的嵌套数组上迭代



我对node.js,express,车把等是新手。

这就是我的数据的样子

var dropdownCategory = [
  {title:"Title", dropdownItem: [{title: "1"}, {title: "2"}]}, 
  {title: "Other title", dropdownItem: [{title: "3"}, {title: "4"}]}]

这就是我目前在Express车把上迭代的方式:

{{# each dropdownCategory}}
  <li class="nav-item dropdown">
    <a href="#" class="nav-link dropdown-toggle" data-toggle = "dropdown">
    {{title}}
     </a>
     {{# each dropdownItem}}
     <div class="dropdown-menu">
       <a href="/{{title}}" class="dropdown-item">{{title}}</a>
     </div>
     {{else}}
     {{/each}}
  </li>
{{else}}
(...)
{{/each}}

我总是只从dropdownItem获得第一个标题。感谢您对此的投入。我认为这是将第二个数组嵌套在对象中的问题,但是老实说,我不知道如何修复它。谢谢!

首先让迭代在下拉列表上,然后将其登录到控制台以查看:

{{# each dropdownCategory}}
       {{log this}}
    {{/each}}

在控制台中,您应该看到以下内容:

{title:"Title", dropdownItem: [{title: "1"}, {title: "2"}]}, 
  {title: "Other title", dropdownItem: [{title: "3"}, {title: "4"}]}

现在,我们必须迭代'

{{# each dropdownCategory}}
       {{#each this.title}} //instead of "this.title", "this" or "." also correct
            {{this}}
          {{/each}}
    {{/each}}

您始终可以使用" log"登录。辅助方法。我将HTML零件留给了您:)您可以装饰自己想要的方式。我希望它有帮助

最新更新