Backbone.Collection オブジェクトはUnderscore のCollection.shuffle()
オブジェクトをプロキシするため、すべての Backbone コレクションにはメソッドがありshuffle()
ます。
アンダースコアのシャッフルは正常に動作します:
アンダースコア コレクションの最後の 5 項目のみをシャッフルしたい場合は、次のように実行できますslice()
。
バックボーン コレクションをスライスしてシャッフルすることもできます。
しかし、データベースからアイテムを複数回 es するバックボーン コレクションの場合、最後の呼び出しでfetch
フェッチされたアイテムだけをシャッフルすることはできないようです。fetch
スライスシャッフル。
a.models // say, [id:1, id:2, id:3]
a.fetch().done(function (data) {
return data = _.shuffle(data)
})
a.models // [id:1, id:2, id:3, id:4, id:5, id:6], still sorted
遅延オブジェクト内でソートしても、外側のコレクションはまったく変更されないようです。
n
では、バックボーン コレクションの最後にあるアイテムだけを並べ替えるにはどうすればよいでしょうか?