1. ホーム
  2. backbone.js

[解決済み] Backbone.js:Backboneコレクションでモデルのインデックスを取得するには?

2022-09-10 19:01:28

質問

コレクション内のモデルのインデックスを見つける方法はありますか?

例えば、ビューの中に作業中のモデルがあるとします。そのモデルが、現在入っているコレクション内のインデックスを吐き出すことは可能でしょうか?私は、現在のターゲットの上または下のモデルにアクセスしたいので、これを実行したいと思います。

つまり、以下のようなものがあるのでしょうか。

index = this.model.index
modelAbove = this.collection.at( index-1 )

私のデータはネストされたセットなので、"lft" や "rgt" 列で検索すればいいのですが、Backbone がすでにこの情報を持っているなら車輪を再発明したくはなかったのです。

どのように解決するのですか?

はい、backboneはモデルやコレクションに対して多くのunderscore.jsのメソッドへのアクセスを提供しています。 indexOf メソッドを含む、モデルやコレクションに関する多くの underscore.js メソッドへのアクセスを提供します。また、コレクションに関する at メソッドも提供しています。

var index = this.collection.indexOf(this.model);
var modelAbove = this.collection.at(index-1);