2012-07-22 92 views
1

目標:阻止UI,直到Ajax驗證調用返回。用一些對話或消息。Spine.js - 顯示「加載」消息

問題:如何以Spine/MVC的方式,我應該追加它們並刪除當前視圖頂部的HTML內容?

一半的解決方案:內部控制器 - > 綁定模型ajaxSuccess函數以刪除消息HTML,並在保存模型對象時附加「加載」消息。

任何想法,?

謝謝。

回答

1

快速回答:你應該儘量避免它。這對用戶和spine.js的核心理念都很惱人。

http://spinejs.com/docs/introduction

核心價值觀:

[...]

異步接口 - 太多的JavaScript應用程序框架&不採取客戶端的功率的充分利用渲染。最終用戶不關心對服務器的後臺請求是否正在等待,並且不希望看到加載消息和旋轉器。用戶需要暢通的界面和即時交互。爲了實現這一點,Spine存儲和呈現客戶端的所有內容,並與服務器異步通信。

我明白,有時候堵只是無法避免。在這種情況下,我會遵循這個模式:

在控制器:

  1. 添加阻止覆蓋HTML即異步
  2. 呼叫模型的方法,但需要阻止
  3. 等待模型發出的事件表示動作已完成,例如。 validationDone

在模型:

  1. 寫入異步方法照常
  2. 在成功和錯誤處理程序,發出validationDone事件