javascript - angularjs 会自动创建嵌套结构吗?

标签 javascript arrays angularjs nested notation

对于如何使用 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/

相关文章:

使用正则表达式后的 JavaScript 解构赋值

angularjs - Angular 2 使用 getter 和 setter 将输入表单值与模型绑定(bind)

Javascript:尝试将函数设置为数组中对象的成员

javascript - 将 JSON 字符串日期转换为 JavaScript(Google Apps 脚本)

php - 将 PHP 数组传递给 JavaScript 函数

javascript - 从给定日期时间更新日期时间

ruby-on-rails - 获取散列键的嵌套数组的第一个元素

arrays - 如何获取具有特定索引的字符串 - swift

javascript - javascript 中的多对多映射对象

javascript - AngularJS:使用 $broadcast 隐藏表列