This repository was archived by the owner on Apr 12, 2024. It is now read-only.
This repository was archived by the owner on Apr 12, 2024. It is now read-only.
AngularJS 1.3.0 ngRepeat Prints Objects from Array In Reverse #9831
Closed
Description
I upgraded AngularJS from 1.2 version to 1.3.0 and noticed that ngRepeat started to print object from array in reverse. Filter example:
return function (people) {
if (!angular.isArray(people))
return people;
var results = [];
var members = [];
var spouses = [];
var everyoneElseUnOrdered = [];
var everyoneElseOrderedByBirthDate = [];
angular.forEach(people, function (person) {
var relationshipType = $filter('relationship')(person.Relationship, person.Gender);
switch (relationshipType) {
case 'Member':
members.push(person);
break;
case 'Husband', 'Wife':
spouses.push(person);
break;
default:
everyoneElseUnOrdered.push(person);
}
});
everyoneElseOrderedByBirthDate = $filter('orderBy')(everyoneElseUnOrdered, function (person) {
var date = new Date(person.BirthDate);
return date;
});
angular.forEach(members, function (member) {
results.push(member);
});
angular.forEach(spouses, function (spouse) {
results.push(spouse);
});
angular.forEach(everyoneElseOrderedByBirthDate, function (person) {
results.push(person);
});
return results;
};
When filter applied to ngRepeat "Member" will be at the very bottom instead of top.
Example:
child
child
wife
member
But with 1.2.* ngRepeat prints in order
member
wife
child
child