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));
当然、TOUはなくBackbone.Collection
の独自のコレクションクラスを使用することができます。
range
のマニュアルをhttp://documentcloud.github.com/underscore/#rangeでご覧ください。
ありがとうございます - 私は.at()について知りませんでした。出来た – Joe