0
"Beginning backbone"이라는 설명서와 설명서를 사용하여 BackboneJs를 배우는 중. 그러나 몇 시간 동안 수집 소집 부분에 갇혀있었습니다. 또한 조회하려고하지만 복잡한 결과를 찾을 수 = 나는이 문서에 표시하지만 현재 코드 구문 현명한백본에서 컬렉션을 정렬하는 방법
에 적용하는 방법을 이해하지 않는 한 나는, 비교기를 사용하는 것을 알고/
http://backbonejs.org/#Collection-comparator
var Book = Backbone.Model.extend({
defaults:
{
title: "default title",
author: "default author",
pages: 20
},
comparator: function(item)
{
//sort by title
return item.get('title');
}
});
var book1 = new Book({ title:"Book of wonders",author:"author1",pages:1 });
var book2 = new Book({ title:"Zelda",author:"author2",pages:2 });
var book3 = new Book({ title: "Drake's out", author: "author3",pages:3});
var book4 = new Book({ title: "AutoCad",author: "author4",pages: 4});
var Library = Backbone.Collection.extend({
model: Book
});
var library = new Library([book1,book2]);
library.add([book3,book4]);
library.forEach(function(model){
console.log('Book is called '+model.get("title"));
});
console.log('Library contains '+library.length+' books');
당신은'a.get ('제목') == b.get ('제목')이 누락 비교 기능 내부의 get 함수의 매개 변수를 변경 아무것도하여 정렬하려면 이 경우, 비교기는 표준 ['Array.prototype.sort'] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference)을 사용하여 끝나는 경우에 0을 반환해야합니다./Global_Objects/Array/sort) 메소드를 호출합니다. –
비교기의 첫 번째 줄에 넣어야합니까? – user254883
'a_title == b_title','a_title b_title'의 세 가지 경우 만 다루면됩니다. 0, -1 및 1을 각각 반환해야합니다. 원하는 조건을 정렬하십시오. –