web-dev-qa-db-fra.com

Backbone.js: Comment obtenir l'index d'un modèle dans une collection Backbone?

Existe-t-il un moyen de trouver l'index d'un modèle dans une collection?

Supposons que dans un point de vue sur lequel nous travaillons, un modèle puisse-t-il cracher son index dans la collection dans laquelle il se trouve actuellement? J'aimerais le faire parce que je veux accéder au modèle situé au-dessus ou au-dessous de la cible actuelle.

En d'autres termes, y a-t-il quelque chose comme:

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

Mes données sont un ensemble imbriqué, je peux donc effectuer une recherche dans les colonnes "lft" ou "rgt", mais je ne voulais pas réinventer la roue si Backbone dispose déjà de ces informations.

119
brian h

oui, le backbone donne accès à de nombreuses méthodes underscore.js sur les modèles et les collections, y compris une méthode indexOf sur les collections. il fournit également une méthode at comme celle que vous avez montrée.

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