所以我一直试图解决这个问题,但它仍然让我感到困惑。
最终我希望能够做到以下
object in objects | unique:'DateTime | limitTo:4'//As the year is the first 4 characters
(哦,好吧y10k:))
但是我不知道我是怎么写的,我更喜欢把它作为内联HTML代码,所以我不需要乱用依赖注入。
提前致谢!
答案 0 :(得分:0)
使用此derictive:
.filter('unique', function () {
return function (items, filterOn) {
if (filterOn === false) {
return items;
}
if ((filterOn || angular.isUndefined(filterOn)) && angular.isArray(items)) {
var hashCheck = {}, newItems = [];
var extractValueToCompare = function (item) {
if (angular.isObject(item) && angular.isString(filterOn)) {
return item[filterOn];
} else {
return item;
}
};
angular.forEach(items, function (item) {
var valueToCheck, isDuplicate = false;
for (var i = 0; i < newItems.length; i++) {
if (angular.equals(extractValueToCompare(newItems[i]), extractValueToCompare(item))) {
isDuplicate = true;
break;
}
}
if (!isDuplicate) {
newItems.push(item);
}
});
items = newItems;
}
return items;
};
});