目的:Ajax検証呼び出しが戻るまでUIをブロックします。いくつかのダイアログまたはメッセージ付き。
問題:Spine / MVCの方法で、現在のビューの上部にあるHTMLコンテンツを追加し、削除することになっていますか?
中途半端な解決策:コントローラーの内部->モデルのajaxSuccess関数をバインドしてメッセージHTMLを削除し、モデルオブジェクトの保存に「読み込み中」のメッセージを追加します。
何か案は、?
ありがとう。
簡単な答え: 完全に避けるようにしてください。これはユーザーにとって迷惑であり、spine.js の中核となる哲学に反します。
http://spinejs.com/docs/introduction :
基本的価値観:
[...]
非同期インターフェイス - クライアント側のレンダリング機能を十分に活用していない JavaScript アプリケーションやフレームワークが多すぎます。エンドユーザーは、サーバーへのバックグラウンド リクエストが保留中かどうかを気にせず、メッセージやスピナーの読み込みを見たくありません。ユーザーは、ブロックされていないインターフェースと即時の対話を望んでいます。これを可能にするために、Spine はすべてをクライアント側で保存およびレンダリングし、サーバーと非同期で通信します。
ブロックを避けられない場合があることは理解しています。そのような場合、私は次のパターンに従います。
コントローラーで:
validationDone
モデルでは:
validationDone
イベントを発行します。