3

私はin バックボーンのwhereメソッドを使用していました。Collectionsしかし、この結果を取得する方法がわかりません:

MyCollection.Group[x].id

ご想像のとおり、MyCollectionはコレクション、Groupは配列、idは特定の値に一致させたいフィールドです。次のようなものです。

MyCollection.findWhere(Group[x].id: 34);

の「含む」機能を見てきましたunderscoreが、連想配列では機能しないようです

それを行う方法はありますか、または Javascript を使用して手動でコレクションを解析する必要がありますか?

4

2 に答える 2

9

Collection.whereCollection.findWhereは、単純なフィルターの便利な関数です。あなたの場合、より複雑なものを使用しますCollection.find_.findにプロキシされます)

find _.find(list, iterator, [context])
リスト内の各値を調べて、真偽テスト (反復子) に合格した最初の値を返します。この関数は、受け入れ可能な要素を見つけるとすぐに戻り、リスト全体をトラバースしません。

そして、あなたの状態を正しく理解していれば、次のように見えるかもしれません

MyCollection.find(function(model) {
    return _.findWhere(model.get('Group'), {id: 34});
})
于 2013-05-02T08:13:32.403 に答える
0

jQuery .find() の使用を選択できます。ここで例を参照してください: http://api.jquery.com/find/

于 2013-05-02T07:10:57.800 に答える