从模型直接覆盖fetch()和save()是一种好习惯吗?

时间:2012-08-05 13:56:30

标签: backbone.js

我不想覆盖Backbone.sync(),因为我的某些模型实际上会使用标准sync()

直接从模型中覆盖fetch()save()是不错的做法?

1 个答案:

答案 0 :(得分:4)

没有必要全局覆盖sync。您可以按照模型/集合进行操作,即

var MyModel = Backbone.Model.extend({
    sync: customSync,
    ...
});

这可以避免全局覆盖Backbone.sync。

现在,如果您不需要实现完全同步,例如它只需覆盖fetch,您当然也可以基于每个模型进行同步。

据推测,您已经看到Backbone.sync被localStorage版本覆盖了。这确实没有必要(我认为这是不好的做法)。仅定义自定义sync函数并让模型/集合使用它就足够了。