微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

遍历JavaScript数组

如何解决遍历JavaScript数组

我有以下数组

categories = [{"id_product_cat":1,"category":"food","id_product_sub_cat":1,"subcategory":"Pizza"},{"id_product_cat":1,"id_product_sub_cat":2,"subcategory":"Burger"},"id_product_sub_cat":3,"subcategory":"Chicken"},"id_product_sub_cat":4,"subcategory":"Sandwiches"},{"id_product_cat":2,"category":"drinks ","id_product_sub_cat":5,"subcategory":"Beer"},"id_product_sub_cat":6,"subcategory":"Wine"},"id_product_sub_cat":7,"subcategory":"Liquor"},"id_product_sub_cat":8,"subcategory":"Water"},"id_product_sub_cat":9,"subcategory":"Juice"}]

我想最好使用 forEach()循环语句循环遍历此过程,以在Angular中重现以下内容。类别名称标题,然后每个类别下的相应子类别。

<div class="col-sm-12 vertical-menu">
       <h5>Categories</h5>
       <div class="vert-menu-list">
         <h6>Food</h6>
        <ul>
            <li><a routerLink="/">Burgers</a> </li>
            <li><a routerLink="/">Chicken</a></li>
            <li><a routerLink="/">Pizzas</a></li>
            <li><a routerLink="/">Sandwich</a></li>
        </ul>

        <h6>Drinks</h6>
        <ul>
            <li><a routerLink="/">Beer</a> </li>
            <li><a routerLink="/">Wine</a></li>
            <li><a routerLink="/">Liquor</a></li>
            <li><a routerLink="/">Water</a></li>
            <li><a routerLink="/">Juice</a></li>
        </ul>
       </div>
       
    </div> 

解决方法

您可以使用ng-for,但是在此之前,您需要重组类别以具有以下结构。

const categories = 
  [
    {
      category: "something",subcategory: [
        {
          to:"somewhere",label:"someString"
        }
      ]
    }
  ];
<div class="col-sm-12 vertical-menu">
       <h5>Categories</h5>
       <div class="vert-menu-list" *ngFor="category in categories">
         <h6>{{category.category}}</h6>
         <ul *ngIf="category.subcategory">
            <li *ngFor="subLink in category.subcategory">
              <a [routerLink]="subLink.to">
                {{subLink.label}}
              </a>
            </li>
         </ul>
       </div>
    </div> 
,

您可以像这样在for循环中进行

<div *ngFor="let item of items; let myIndex = index>
  {{myIndex}}
</div>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。