0

私たちは、モバイルフレンドリーになるようにサービスdailymus.esを構築しましたが、携帯電話でアクセスすると、さまざまなパフォーマンスの問題が発生します。

具体的には、数回の「ページ」の後、およびページに多くのコンテンツがある場合にクラッシュします。

イベントハンドラやメモリリークが多すぎるのではないかと思います。バックボーンでこれらの問題を解消するためにどのような方法を使用しますか?

4

2 に答える 2

2

GoogleChromeのデベロッパーコンソールを使用してサイトをテストすることをお勧めします。[プロファイル]タブを使用して、ヒープの状態を調べます。

バックボーンモデル/ビューのほとんどのリークは、DOMイベントをビューから切り離さず、バインディング(オン)イベントをモデルから切り離さないことが原因です。

バックボーンビューのremoveメソッドをオーバーライドし、.on()に設定したすべてのものから.off()を実行するようにしてください。サブビューでremoveを呼び出すことを忘れないでください。

リークを見つけるには:

  1. スナップショットを撮る
  2. コードを実行してビューを作成し、それを削除します
  3. 別のスナップショットを撮る
  4. スナップショットを比較して、リリースされていない作成された新しいオブジェクトを見つけます。

GoogleChromeヒーププロファイラーの詳細

于 2012-10-23T22:33:47.157 に答える