繁体   English   中英

如何使用ng-options迭代对象中的数组?

[英]How to use ng-options to iterate through an array within an object?

如何使用ng-options用对象中的“categories”数组的结果填充select元素?

        {
          title: "Star Wars",
          categories: ["Coding", "Exploration", "Adventure"]
        }, {
          title: "Street Wars",
          categories: ["Surfing", "Exploration", "Testing"]
        },

我想填充一个包含所有可用类别的select元素,然后使用“unique”来过滤掉重复的条目......

正如评论所说,在控制器中创建唯一部件可能更容易,并在新阵列上使用ngOptions

$scope.uniqueOptions = [];
for (var i = 0; i < data.length; i++) {
    for (var j = 0; j < data[i].categories.length; j++) {
        if ($scope.uniqueOptions.indexOf(data[i].categories[j]) === -1) {
            $scope.uniqueOptions.push(data[i].categories[j])
        }
    }
}

选项:

<select ng-model="someModel" ng-options="category as category for category in uniqueOptions"> </select>

如果您使用的是ngRepeat,则可以这样做

 <select ng-model="cat" ng-options="c for c in movie.categories"></select>

这是一个有效的例子。

编辑:选择需要ngModel。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM