骨干/骨干 - 与自定义同步的关系

时间:2014-03-24 18:34:14

标签: javascript backbone.js backbone-relational

我正在开发Backbone.js应用。我还使用第三方API访问应用程序中的数据。此第三方API不提供Backbone期望的标准REST接口。

我听说我可以扩展或重载Backbone.Sync函数以使Backbone与第三方API一起工作,但我无法找到任何示例来确定如何完成此操作。

有没有人知道可用于此的任何示例或教程?任何人都可以提供一个例子吗?

另外,我最近发现了Backbone-Relational,它可能在我的应用程序中派上用场,而且我的数据也是关系型的。但是,我担心将Backbone-Relational与自定义Backbone.Sync函数一起使用也可能会导致问题。有没有人有这方面的经验?

1 个答案:

答案 0 :(得分:0)

一般来说,您编写使用第三方API执行基本CRUD操作的自定义函数,然后覆盖Backbone.sync以打开要使用的方法。

Backbone.sync = function(method, model, options){
  switch(method) {
    case 'create':
      console.log('Creating: ', model);
      break;
    case 'read':
      console.log('Reading: ', model);
      break;
    case 'update':
      console.log('Updating: ', model);
      break;
    case 'destroy':
      console.log('Destroying: ', model);
      break;
}

有关更多深度和演练,请查看DailyJS的Backbone + RequireJS + GoogleAPI教程,特别是part 2part 4

再举一个示例,请查看Backbone localStorage adapter的源代码,因为它会覆盖Backbone.sync以保留localStorage而不是网络。