My Backbone Collection은 fetch()에서 30 개의 모델을받습니다..slice (start, end)와 동등한 방법으로 backbone.js 컬렉션을 변경하는 방법
나는 새로운 컬렉션을 반환
newColl=origColl.first(2);
을 시도했습니다. 보기로 전달하려고하면 작동하지 않습니다.
어쨌든 underscore.js 메서드를 사용하여이 작업을 수행 할 수 있습니까?
My Backbone Collection은 fetch()에서 30 개의 모델을받습니다..slice (start, end)와 동등한 방법으로 backbone.js 컬렉션을 변경하는 방법
나는 새로운 컬렉션을 반환
newColl=origColl.first(2);
을 시도했습니다. 보기로 전달하려고하면 작동하지 않습니다.
어쨌든 underscore.js 메서드를 사용하여이 작업을 수행 할 수 있습니까?
질문을 올바르게 이해할 수 있는지 잘 모르겠지만 다음 스 니펫이 원하는 내용 일 수 있습니다.
var model = origColl.at(2);
var models = [model];
var newColl = new YourCollection(models);
newColl 이제 원래 모음의 위치 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에서 확인하십시오.
감사합니다. 나는 .at()에 대해 몰랐습니다. 효과가있다. – Joe