mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-02-05 17:37:50 +00:00
Update vendors.
Former-commit-id: 1e93a793891e5f4e2c0d3927f3f38b25bd182263
This commit is contained in:
33
vendor/backbone/backbone.js
vendored
33
vendor/backbone/backbone.js
vendored
@@ -731,15 +731,23 @@
|
||||
// normal circumstances, as the set will maintain sort order as each item
|
||||
// is added.
|
||||
sort: function(options) {
|
||||
options || (options = {});
|
||||
if (!this.comparator) throw new Error('Cannot sort a set without a comparator');
|
||||
var boundComparator = _.bind(this.comparator, this);
|
||||
if (this.comparator.length === 1) {
|
||||
this.models = this.sortBy(boundComparator);
|
||||
} else {
|
||||
this.models.sort(boundComparator);
|
||||
if (!this.comparator) {
|
||||
throw new Error('Cannot sort a set without a comparator');
|
||||
}
|
||||
if (!options.silent) this.trigger('reset', this, options);
|
||||
|
||||
// If provided an attribute name, use it to sort the collection.
|
||||
if (_.isString(this.comparator)) {
|
||||
var attr = this.comparator;
|
||||
this.comparator = function(model){ return model.get(attr); };
|
||||
}
|
||||
|
||||
if (this.comparator.length === 1) {
|
||||
this.models = this.sortBy(this.comparator, this);
|
||||
} else {
|
||||
this.models.sort(_.bind(this.comparator, this));
|
||||
}
|
||||
|
||||
if (!options || !options.silent) this.trigger('reset', this, options);
|
||||
return this;
|
||||
},
|
||||
|
||||
@@ -752,14 +760,12 @@
|
||||
// you can reset the entire set with a new list of models, without firing
|
||||
// any `add` or `remove` events. Fires `reset` when finished.
|
||||
reset: function(models, options) {
|
||||
models || (models = []);
|
||||
options || (options = {});
|
||||
for (var i = 0, l = this.models.length; i < l; i++) {
|
||||
this._removeReference(this.models[i]);
|
||||
}
|
||||
this._reset();
|
||||
this.add(models, _.extend({silent: true}, options));
|
||||
if (!options.silent) this.trigger('reset', this, options);
|
||||
if (models) this.add(models, _.extend({silent: true}, options));
|
||||
if (!options || !options.silent) this.trigger('reset', this, options);
|
||||
return this;
|
||||
},
|
||||
|
||||
@@ -1151,7 +1157,8 @@
|
||||
// a new one to the browser history.
|
||||
_updateHash: function(location, fragment, replace) {
|
||||
if (replace) {
|
||||
location.replace(location.href.replace(/(javascript:|#).*$/, '') + '#' + fragment);
|
||||
var href = location.href.replace(/(javascript:|#).*$/, '');
|
||||
location.replace(href + '#' + fragment);
|
||||
} else {
|
||||
location.hash = fragment;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user