我正在开发一个Backbone.js应用程序。我还使用第三方API来访问应用程序中的数据。此第三方API不提供Backbone所期望的标准REST接口。
我听说我可以扩展或重载Backbone.Sync函数来使Backbone与第三方API一起工作,但我还找不到任何示例来确定如何做到这一点。
有没有人知道这方面的例子或教程?有人能举个例子吗?
此外,我最近发现了Backbone- relational,它在我的应用程序中可能会派上用场,因为我的数据是关系型的。但是,我担心使用带有自定义Backbone.Sync函数的Backbone-Relational也可能会导致问题。有没有人有这方面的经验?
发布于 2014-03-25 10:49:19
一般来说,您可以使用第三方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,而不是跨网络。
https://stackoverflow.com/questions/22617795
复制相似问题