2012-01-28 2 views

답변

1

질문을 올바르게 이해할 수 있는지 잘 모르겠지만 다음 스 니펫이 원하는 내용 일 수 있습니다.

var model = origColl.at(2); 
var models = [model]; 
var newColl = new YourCollection(models); 

newColl 이제 원래 모음의 위치 2에서 모델을 포함하는 새 컬렉션이 될 것입니다. 이 예제는 필자가 작성하는 것보다 좀 더 장황한 것이지만, 더 명확하게 해줄 것이다.

+0

감사합니다. 나는 .at()에 대해 몰랐습니다. 효과가있다. – Joe

2

first(n)에서보기가 컬렉션을 기대하는 동안 배열을 반환하기 때문에 코드가 작동하지 않을 수 있습니다. 이처럼 포장해야합니다

일반적인 "슬라이스"를
var newColl = new Backbone.Collection(origColl.first(2)); 

당신이 _.range과 함께 find를 사용할 수 있습니다

var newColl = new Backbone.Collection(origColl.find(_.range(start, end)); 

물론, 가나 대신 Backbone.Collection의 자신의 컬렉션 클래스를 사용할 수 있습니다.

range의 설명서를 http://documentcloud.github.com/underscore/#range에서 확인하십시오.

관련 문제