用angularjs递归迭代嵌套对象

Recursive iterate by nested objects with angularjs

本文关键字:嵌套 对象 迭代 递归 angularjs      更新时间:2023-09-26

这是JSON的嵌套对象,嵌套级别不固定

{
    "level": 2,
    "title": "Subcat_in_cat2",
    "url": "subcat_in_cat2_url",
    "id": 5,
    "parent": {
      "level": 1,
      "title": "Cat2",
      "url": "cat2_url",
      "id": 2,
      "parent": {
        "level": 0,
        "title": "Cat1",
        "url": "cat1_url",
        "id": 1,
        "vertical_order": 0
      },
      "vertical_order": 0
    },
    "vertical_order": 0
}

如何迭代对象来从这些数据创建面包屑,像这样:

<ul class="breadcrumb">
    <li><a href="cat1">Cat1</a></li>
    <li><a href="cat2">Cat2</a></li>
    <li><a href="subcat_in_cat2_url">Subcat_in_cat2</a></li>
</ul>

在Angular JS中,你必须这样做,假设你的JSON对象存储在$scope.categories:

<ul class="breadcrumb" ng-repeat="cat in categories">
   <li><a href="cat.url">{{cat.title}}</a></li>
</ul>