Upgrading to Backbone 1.0

Upgrading to Backbone 1.0

本文关键字:Backbone to Upgrading      更新时间:2023-09-26

我想从0.9系列升级到Backbone 1.0。

在我的主干应用中,当我调用collection.fetch()时,我绑定了reset事件。不幸的是,这在1.0版本中不再有效:

将Collection的"update"重命名为set,以便与之并行Model.set(),与reset对比。它现在是默认的更新获取后的机制。如果您想继续使用"reset",请通过{重置:真}

触发重置事件,我可以这样做:

this.collection.fetch({reset: true})

再次工作,但是我宁愿不必遍历所有代码并更新每个collection.fetch()。是否有办法配置collection.fetch()自动传递reset: true ?

好吧,你总是可以重写fetch当你扩展了你自己的主干集合,所以它总是包含一个选项:

fetch: function (options) {
    options = options ? _.clone(options) : {};
    options.reset = true;
    Backbone.Collection.prototype.fetch.call(this, options);
}

那么每次你调用fetch的时候,它就会把它作为一个选项包含进去你就不需要在实际调用fetch的时候修改它