我正在开发Backbone.js应用。我还使用第三方API访问应用程序中的数据。此第三方API不提供Backbone期望的标准REST接口。
我听说我可以扩展或重载Backbone.Sync
函数以使Backbone与第三方API一起工作,但我无法找到任何示例来确定如何完成此操作。
有没有人知道可用于此的任何示例或教程?任何人都可以提供一个例子吗?
另外,我最近发现了Backbone-Relational,它可能在我的应用程序中派上用场,而且我的数据也是关系型的。但是,我担心将Backbone-Relational与自定义Backbone.Sync
函数一起使用也可能会导致问题。有没有人有这方面的经验?
答案 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 2和part 4。
再举一个示例,请查看Backbone localStorage adapter的源代码,因为它会覆盖Backbone.sync
以保留localStorage
而不是网络。