Ng-repeat通过object与value作为一个数组角

ng-repeat through object with value as an array angular

本文关键字:一个 数组 object 通过 value Ng-repeat      更新时间:2023-09-26

我有一个键值对的对象,看起来像这样。您将看到键的值是一个数组。

$scope.testObj = {
   "London":[
         {"id":1,"city":"London","country":"GB","name":"Test1"},
         {"id":4,"city":"London","country":"GB","name":"Test2"}
   ],
   "Los Angeles":[
       {"id":8,"city":"LA","country":"US","name":"Test3"}
   ]
}

我想在前端使用angular显示城市旁边的名称。为了做到这一点,我尝试了许多方法,并使用了track by $index,但不知道如何使其工作。

<div ng-repeat="(key, val) in jobsByCity track by $index">
    {{key}}:{{val[$index].name}}
</div>

我也研究过这种方法,嵌套ng-repeat

 <div ng-repeat="(key, val) in testCity">
    {{key}}
    <div ng-repeat="test in val[$index].name">
       {{test}}
     </div>
  </div>

使用另一个ng-repeat来迭代值:

<div ng-repeat="(key, val) in jobsByCity">
    <div ng-repeat="subValue in val track by $index">
        {{key}}:{{subValue.name}}
    </div>
</div>

还请注意,您的Los Angeles属性需要引号,否则它是无效的javascript。