먼저 컬렉션에서 내 모델을 required
플래그로 정렬하고 알파벳순으로 value
으로 정렬 할 수 있기를 원합니다.비교기를 사용하여 여러 특성으로 정렬하려면 어떻게합니까?
현재 내 코드는 다음에 다음과 같습니다
var myModel = Backbone.Model.extend({
defaults: {
required: true,
value: '',
...
}
};
var myCollection = Backbone.Collection.extend({
model: myModel,
comparator: function (model) {
return -model.get('required');
}
});
myCollection.create([
{value: 'A', required: false},
{value: 'B', required: true},
{value: 'C', required: false},
{value: 'D', required: false},
{value: 'E', required: true}
]);
비교기가 필요 첫째로 내 모델을 정렬하지만 나는 또한 그들을 알파벳 순으로 정렬하는 방법에 대한 손실에 있어요.
는B, E, A, C, D
가능한 복제본 [Javascript, 어떻게 여러 열로 배열을 정렬합니까?] (http://stackoverflow.com/questions/2784230/javascript-how-do-you-sort-an-array-on-multiple –
백본에 대한 또 다른 질문에 답했습니다. "비교"아키텍처입니다. 비교가되지 않았기 때문에 분명히 잘못 명명 되었기 때문에 실제 디자인 결함이라고 생각합니다. – Pointy
문제는 '비교 자'가 비교할 두 개의 객체를주는 것 같지 않은 두 항목을 비교하는 방법을 모르겠다는 것입니다. – JaredMcAteer