2014年10月29日水曜日

非同期通信の待ち合わせ

Meeting of asynchronous communication.


非同期処理の完了を待って次の処理をするようなとき、コールバック地獄にならない便利なjQueryの標準モジュールDeferredです。

いろいろなところで紹介されています。
http://techblog.yahoo.co.jp/programming/jquery-deferred/
http://qiita.com/yuku_t/items/1b8ce6bba133a7eaeb23
http://api.jquery.com/category/deferred-object/

 例えば、非同期でデータを取得してビューにセットするのだけれども、読み込みが完了する前にレンダリング処理されてしまうようなときです。
 特に、非同期読み込む処理が複数のとき、それらの完了を待って描画とするとき、とても便利です。

$.when(
  // 非同期で読み込む処理1
  // 非同期で読み込む処理2
).done(function() {
  // 読み込んだ情報をビューへセット
};


0 件のコメント:

コメントを投稿