Skip to content

Instantly share code, notes, and snippets.

@juanmaguitar
Created July 23, 2017 22:28
Show Gist options
  • Save juanmaguitar/d0f5ca27cb4552e78d546b74668e3d5e to your computer and use it in GitHub Desktop.
Save juanmaguitar/d0f5ca27cb4552e78d546b74668e3d5e to your computer and use it in GitHub Desktop.
Mark duplicates ng-repeat angular
<!DOCTYPE html>
<html lang="en" ng-app="myApp">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
.highlight {
background: yellow;
}
</style>
</head>
<body>
<div ng-controller="demoController">
<ul>
<li ng-repeat="country in countries track by $index">
<span ng-class="isDuplicated(countries, country) ? 'highlight' : ''" >
{{ country }}
</span>
</li>
</ul>
</div>
<script type="text/javascript" src="https://opensource.keycdn.com/angularjs/1.6.5/angular.min.js"></script>
<script type="text/javascript">
/**
* myApp Module
*
* Description
*/
angular.module('myApp', [])
.controller('demoController', ['$scope', function($scope){
$scope.countries = ['Namibia','Niger','Palau','Macedonia','Brazil','Czech Republic','Mauritania','Canada','Sweden','Afghanistan','Singapore','Azerbaijan','Turkmenistan','Sao Tome and Principe','Denmark','Mongolia','Switzerland','St. Lucia','Nauru','Slovenia','Papua New Guinea','Cameroon','Iraq','Portugal','Zambia','Italy','Afghanistan','Burkina Faso','Dominica','Iceland','Serbia','Myanmar','Canada','Oman','United Kingdom','Tanzania','Jordan','Timor-Leste','Kosovo','Lithuania','Tuvalu','Palau','Latvia','Andorra','Belarus','Tajikistan','Indonesia','Hungary','Cambodia','Israel','Bangladesh','Peru','Moldova']
$scope.isDuplicated = function(array, element) {
return array.filter( item => item === element).length > 1
}
}])
</script>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment