It took me a long time to debug where the fault was when I was trying to list some stuff from a database. It turns out that if there are values in an array that are duplicates, Angular refuses to use the array at all in ng-repeat.
An example of which can be found here: http://jsfiddle.net/2uyxu7ha/
Javascript:
var app = angular.module("Module", []);
app.controller("Controller", function($scope){
$scope.array1 = ["1", "2", "3", "4"];
$scope.array2 = ["1", "1", "3", "4"];
});
HTML:
<div ng-app="Module">
<div ng-controller="Controller as ctrl">
<ul>
<li ng-repeat="item in array1">{{item}}</li>
</ul>
<ul>
<li ng-repeat="item in array2">{{item}}</li>
</ul>
</div>
</div>
As you will notice, there is just one value that repeats in the second array, and the whole list is therefore not displayed. If you just change the second value to "2", it will be displayed.
I don't want this behavior, because even if there are some repeating values in the database, I still want to see them on the front-end. Why does this happen and how do I fix it?