0

アプリを構築するために、express 3 で socket.io を使用しています。

メッセージの受信時にローダーのアニメーションを表示し、メッセージの受信時に非表示にするように設定したいと思います。jQuerys.ajaxStartによく似ていて、.ajaxCompleteどこで私は何かをすることができますか$('#loader').show();など

これを達成するためにsocket.ioでキャッチできるイベントはありますか?

4

1 に答える 1

1

これは、次のアイデアを使用して実現できます。

  1. サーバー:about_to_startイベントを発行します。
  2. CLIENT: onabout_to_startローダーを有効にしてdownload_readyイベントを発行します。
  3. SERVER:download_readyイベントでデータを送信します。つまり、イベントを発行しdownloadます。
  4. CLIENT:downloadイベント時にデータで何かを行い、ローダーを無効にします。

それが私がそうする方法です。

ところで、単純なメッセージング システムについて話しているのでしょうか。そのシナリオでそれを行う必要はないと思います。ダウンロードには数秒もかかりません。かかる場合は、アプリを最適化するか、馬力を追加する必要があります (つまり、トラフィックが大きすぎる場合は、いくつかのマシンを追加します)。手順 1、2、および 3 の半分をスキップします。手順 4 では、クライアントに「こんにちは、新しいメッセージがあります!」と通知するだけです。

于 2012-05-30T07:18:35.503 に答える