2

我正在为一种新的编程语言构建一个 Backbone框架,我正在尝试使其适应 Backbone 的同步,而不是让 Backbone 适应它。

我需要使用预先存在的 Javascript API,它提供一些抽象并最终提供与服务器的同步。让我们举个例子:

假设我想获取一个模型,让我们想象这个框架已经构建好了。当我调用fetch()模型时,在模型获得数据之前,函数调用(及其参数)和事件的流程是什么?我知道fetch()可能有一个参数,它是一个带有选项的对象,但是由于我需要覆盖这个fetch()调用,所以我需要知道 Backbone 期望fetch()返回的格式,parse()输入参数或save()调用也是如此,以及在每个函数上触发的事件.

我想我知道parse()需要一个对象作为参数,该参数将用于自动设置模型及其数据,并且我应该覆盖它以在那里构建模型和集合,以防有一些模型嵌套。

谢谢!

4

1 回答 1

0

覆盖同步的关键是将“读取”、“创建”、“更新”和“删除”操作映射到您的 API。您将收到一个options具有success回调的对象。您需要success在 API 返回时调用该函数,并使用一个填充了属性的对象。

这是最终将被发送到parse解决问题的对象。

我最近通过这个练习使 SignalR 适应 Backbone.Sync:

骨干网.SignalR

我阅读了 Backbone 的 LocalStorage 适配器以获得灵感:

Backbone.LocalStorage

于 2012-12-10T10:46:59.543 回答