不确定这是否可能与Angular有关,但它会很可爱。
说我有一个汽车的json对象。所以很多车型和很多品牌(福特,沃克斯豪尔,大众汽车等)。然后我将使用data-ng-repeat列出所有汽车。
但我想列出能够按汽车制造过滤的复选框。在得到JSON之前我不会知道汽车的可能性,所以我不能预先填充列表。
这是一个快速演示 http://jsbin.com/AkiGaLO/3/edit
现在我可以单独循环遍历所有项目,拉出make,检查make是否存在于另一个数组中,如果没有把它扔进去。但这一切看起来都很无聊:)我可能会处理成千上万的对象
Angular有一个快速的胜利吗?或者在正常的JS中。
干杯
答案 0 :(得分:0)
您可以创建自定义过滤器,以返回汽车品牌名称的唯一列表。
<div data-ng-repeat="carmake in cars | uniquemake">
<input type="checkbox" ng-model="search[carmake]" />{{ carmake }}
</div>
app.filter('uniquemake', function () {
return function (cars, length, end) {
var result = {};
angular.forEach(cars, function (car) {
result[car.make] = 1;
});
return Object.keys(result);
};
});