Skip to content

Instantly share code, notes, and snippets.

@tarmann
Last active December 17, 2015 06:09
Show Gist options
  • Save tarmann/5563498 to your computer and use it in GitHub Desktop.
Save tarmann/5563498 to your computer and use it in GitHub Desktop.
JavaScript: Backbone.Collection.move Method
/**
* Moves a model to the given index, if different from its current index. Handy
* for shuffling models about after they've been pulled into a new position via
* drag and drop.
*/
Backbone.Collection.prototype.move = function(model, toIndex) {
var fromIndex = this.indexOf(model)
if (fromIndex == -1) {
throw new Error("Can't move a model that's not in the collection")
}
if (fromIndex !== toIndex) {
this.models.splice(toIndex, 0, this.models.splice(fromIndex, 1)[0])
this.trigger('move', this);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment