我是一個完整的noob with Backbone,我現在只學習了8個小時,所以很抱歉如果這個問題看起來很基本。這個文件不是很清楚。主幹Ajax驗證
有問題的模型Product
需要運行大量的Ajax調用。在我的模型邏輯中,我需要根據特定條件在模型驗證中運行至少2個Ajax調用。
不僅如此,但在某些領域改變我還需要運行Ajax調用的每個字段觸發從上次更改冒泡了自己的變化領域,即:
- 到價格改變
- 模型通過服務器調用重新計算產品的價格
- 同時,從價格變化觸發對模型的供應商變量的更改
- 供應商更改必須在價格更改後執行Ajax調用。
所以我需要知道的是:基本上我應該如何將所有的Ajax調用轉換爲Backbone?這裏最好的方法是什麼?
你不能在'validate'方法中進行異步驗證。它的設計和完全針對客戶端工作(https://github.com/documentcloud/backbone/issues/233)。 – WiredPrairie 2013-03-25 10:56:55
@WiredPrairie儘管在結束時它確實會說「如果您想執行服務器端驗證,請隨時通過調用set()更改客戶端狀態之前運行驗證。」所以對於那些稍微複雜一些的模型應該沒問題,我也看到了使用save的解決方法:http://stackoverflow.com/questions/11331604/backbone-js-ajax-calls – Sammaye 2013-03-25 11:04:27
是的,都是真的。我想指出,你不能以自然的方式使用'validate',並且你需要構建自己的prevalidate邏輯。 – WiredPrairie 2013-03-25 11:07:35