0

this.model.collection.where({selected: true})モデルの配列を返します

selected次に、返されたモデルの属性を false に設定したいと思います。

これどうやってするの?

@model.collection.where({selected: true})(コーヒースクリプト)

4

3 に答える 3

1

これを行うことができます.each

_.each(this.model.collection.where({selected: true}), function(m){
    m.set('selected', false);
});

where一致するオブジェクトの配列を返すため、その配列をアンダースコアの最初の引数に渡す必要がありますeach

次の方法でもこれを行うことができますmap

this.model.collection.map(function(m){if(m.get('selected'){m.set('selected', false);}});

mapコレクション (または配列) 内のすべての要素を取得し、それらにメソッドを適用するので。

于 2012-08-28T21:39:17.210 に答える
1

単純なループの何が問題になっていますか?

m.set('selected', false) for m in @model.collection.where(selected: true)

あるいは:

for m in @model.collection.where(selected: true)
    m.set('selected', false)

アンダースコアは便利ですが、すべてに使用する必要があるという意味ではありません。

于 2012-08-28T22:02:58.537 に答える
-1
this.model.collection.where({selected: true}).each(function(model){
    model.set({selected:false});
}
于 2012-08-28T21:40:39.257 に答える