私は問題を抱えています。Freenodeの#documentcloudで助けを求め、いくつかの提案を得ましたが、それでも問題を解決するのに役立ちませんでした。
基本的に私はコレクションを持っており、最大2〜3千のアイテムがあり、並べ替える必要がありますが、特定の時間にのみ並べ替える必要があります。コンパレータ関数を使用すると問題ありませんが、すべてのアイテムがコレクションに追加されると、2〜3000個のアイテムのいずれかが追加されるたびにコレクション全体が再利用されるため、かなり時間がかかります。
私はいくつかの提案を試しました。1つは次のとおりです。
collection.comparator = function(object) { object.get('sortBy'); };
collection.sort();
collection.comparator = undefined;
これは惨めに失敗し、まったく並べ替えられません。これをcollection.sortBy(...)
使用してみたところ、並べ替えられたコレクションが返されるようですがcollection = collection.sortBy(...)
、並べ替えたコレクションを配列として変数にダンプするだけなので、役に立ちませんcollection
。コレクション関数またはユーティリティを使用しようとすると、.eachがコレクションに対して未定義であるなどのエラーが発生します。
何か案は?