6

Webソケットからのデータでテーブルをリアルタイムで更新する必要があります。

私が今していることは、ソケットでデータを取得するたびに、それを文字列に追加し、ng-repeatを使用してテーブルを表示するために使用される2次元配列を作成することです。

このアプローチを使用した場合のパフォーマンスは非常に遅くなります。このアプローチに加えて、私はメッセージを順番に取得していると想定していますが、データを正しい順序で取得していません。

データをhtmlまたはjsonとしてフォーマットし、Webソケット経由で送信するか、生データを送信する方がよいでしょうか。

これを行うためのより良い方法は何でしょうか?

4

1 に答える 1

0

この文字列から毎回 2 次元配列を再作成する場合は、代わりに新しいデータを配列にプッシュする方が高速です。

データを HTML として送信することは適切ではありませんが、サーバー上でデータを JSON としてフォーマットすると、ほぼ確実にクライアント側での処理速度が向上します。小さなデータを送信し、それらをクライアントの配列に段階的に追加してから、(必要に応じて) データを再ソートすると、より高速になる可能性があります。

別のオプションは、 Underscore.js のスロットル関数のようなものを使用して、AngularJS でダイジェスト サイクルを発生させる回数を制限することです。プロジェクトにすべてのアンダースコアを含めたくない場合は、スロットルだけをつかむこともできます。

于 2012-10-19T18:20:52.610 に答える