これは非常に一般的に議論されるトピックであることは知っていますが、私の質問に正確に答えるものは何も見つかりません:)
現在、Backbone.js プロジェクトに取り組んでいます。ルーターに関しては、ルーター内でビュー、モデル、またはコレクションをインスタンス化するのではなく、状態を処理する 1 つの方法としてルーターを使用します。ルーターはカスタム コントローラー オブジェクトのメソッドを呼び出します。
次に、コントローラーは、インデックス、ショーなどのさまざまなビュー、モデル、およびコレクションをインスタンス化します。これはすべてうまくいきます。
ページ遷移の処理方法に少し苦労しています。私はゾンビの管理などに関する素晴らしい投稿をすべて読みましたが、何が起こっても古いビューのクリーンアップ システムが必要であることを知っています (私は現在、Derick Bailey がブログで書いた .close() メソッドを使用しています)。
#show から #index へ、またはその他のルート変更を行う場合、新しい新鮮なビュー、モデルなどをインスタンス化するだけでよいことを理解しています。これは、ほぼすべてのチュートリアルで見られることです。もちろん、古いものを確実にクリーンアップします。
しかし、すでに #show を使用していて、別の #show ページにルーティングした場合、必要なすべてのビューなどは既にインスタンス化されてレンダリングされています。変更したいのは、モデルとコレクションのデータだけです。
ですから、私の質問は、人々がビューをあまり再利用していないのはなぜだと思いますか。私の頭の中で、あなたがすでにあなたが望むページにいるなら、そのビューがリンクされているモデル/コレクションの url または urlRoot を更新して再取得する方が理にかなっているだろうと考えていました。これにより、リセット イベントがトリガーされ、必要なすべてのビューがこれにサブスクライブして、自分自身を再レンダリングできます。
しかし、私が言うように、私は人々がこれをしているのを見ません. それは本当に悪い考えだからですか?誰かがこのようなことをしている場合、「更新可能な」モデルとコレクションの追跡にどのように対処しますか?
ありがとう!