【发布时间】:2012-03-21 11:07:35
【问题描述】:
我有一个包含“名字”、“姓氏”属性的集合中的用户列表(确切地说是六个)。进行提取时,下面的比较器按“名字”对它们进行排序,并且工作正常。
comparator : function (user) {
return user.get("firstname").toLowerCase();
}
但如果我稍后尝试按不同的值(即“姓氏”)对集合进行排序,则它不起作用。顺序保持不变。
this.collection.sortBy(function(user) {
return user.get("lastname").toLowerCase();
});
我做错了什么?
更新
所以从 sortBy 返回的数据是排序的,但这对我没有帮助,因为我的视图链接到集合。如果我重置集合并将排序后的数组添加回集合中,它的比较器就可以完成工作并将其重新排序为“名字”顺序。
var sorted = this.collection.sortBy(function(user) {
return user.get("lastname").toLowerCase();
});
【问题讨论】: