亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何覆蓋Backbone.sync?

如何覆蓋Backbone.sync?

catspeake 2019-08-30 11:04:57
我正在嘗試Backbone.js,我正在嘗試的其中一件事是調用遠程API,所以我需要能夠覆蓋Backbone.sync,因為我理解文檔。在文檔本身中沒有一個如何做到這一點的例子,并且似乎沒有一個用于Backbone的谷歌組...有人可以指出這樣做的一個例子嗎?
查看完整描述

3 回答

?
慕田峪4524236

TA貢獻1875條經驗 獲得超5個贊

看看這個帶注釋的源示例,它們Backbone.sync用localstorage替代它們


骨干,localStorage的


基本上Backbone.sync應該是一個帶有4個參數的函數:


Backbone.sync = function(method, model, options) { };

你需要解雇options.success或options.error取決于是否method成功。方法的格式如下:


"create" :期望您在服務器上創建模型

"read" :期望您從服務器讀取此模型并將其返回

"update" :期望您使用參數更新服務器上的模型

"delete" :期望您從服務器中刪除模型。

您需要實現這4種方法并定義您想要的任何方法 "server"


當然,這些只是Backbone.sync 必須實施的事情。你可以實施更多methods,你可以將更多的參數傳遞回去,success但最好不要這樣做。


最好確保它與Backbone.sync當前相同,以便您對接口進行編程,而不是實現。如果你想將你的修改版本改為Backbone.synclocalStorage,你不必自己擴展它以匹配擴展的Backbone.sync“


[編輯]


另請注意,您可以使用多個實現sync。每次引用Backbone.sync都是行動的,(this.sync || Backbone.sync)所以你只需要做一些事情:


var MyModel = Backbone.Model.extend({ 

    ...


    "sync": myOwnSpecificSync,


    ...

});

Backbone.sync除非模型具有sync專門設置的方法,否則它只是所有模型使用的默認全局模型。


查看完整回答
反對 回復 2019-08-30
  • 3 回答
  • 0 關注
  • 408 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號