对于如何使用 angular.js 在嵌套数组中创建和引用项目有点困惑。我想我可以这样做:
$scope.zones = [ {z:'north'}, {z:'south'} ];
$scope.zones.times = [ {t:'noon'}, {t:'midnight'} ];
$scope.zones.times.places = [ {p:'here'}, {p:'there'} ];
和 angularjs 会创建一个结构,其中每个区域有两个时间,每个时间有两个地方。
然后我可以使用类似的东西:
<ul ng-repeat="zone in $scope.zones">
<li>{{zone.z}}</li>
<ul ng-repeat="time in zone.times">
<li>{{time.t}}</li>
<ul ng-repeat="place in time.places">
<li>{{place.p}}</li>
</ul>
</ul>
</ul>
查看我页面上的树结构。
那么,使用上面的点表示法实际上会创建一个嵌套的对象数组吗?我应该能够像上面的指令一样“递归地”引用它们吗?我很难让它在前两个级别之外工作。
最佳答案
您没有正确设置数据。应该是:
$scope.zones = [ {z:'north'}, {z:'south'} ];
$scope.zones[0].times = [ {t:'noon'}, {t:'midnight'} ];
$scope.zones[1].times = [ {t:'noon'}, {t:'midnight'} ];
Etc...
然后您的 HTML 应该按预期工作。
关于javascript - angularjs 会自动创建嵌套结构吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24518963/