【问题标题】:Avoid duplicates in a repeater are not allowed避免重复器中的重复是不允许的
【发布时间】:2013-11-16 16:12:27
【问题描述】:

AngularJS 上是否有任何内置功能可以避免 ng-repeater 接收重复的条目?

现在我正在使用以下代码来防止它:

$scope.tags = ['black','white','red','yellow','blue'];
$scope.selectedTags = [];    

// textarea value
var words = $scope.message.split(' ');

for(var j = 0; j < words.length; j++) {
    for (var k = 0; k < $scope.selectedTags.length; k++) {
        if ($scope.selectedTags[k].Name == words[j]) {
            contains = true;
        }
    }

    if (!contains)
    {
        $scope.selectedTags.push($scope.tags[i]);
        contains = false;
    }
}

【问题讨论】:

    标签: angularjs duplicates angularjs-ng-repeat


    【解决方案1】:

    Angular UI 有一个unique 过滤器:

    通过检查指定键从数组中过滤掉所有重复项

    或者,如果它只是一个字符串数组,您可以 filter 您的数组,例如:

    arr.filter(function (e, i, arr) {
        return arr.lastIndexOf(e) === i;
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-21
      • 1970-01-01
      • 1970-01-01
      • 2017-03-25
      • 2017-02-11
      • 1970-01-01
      相关资源
      最近更新 更多