3

これがスキニーです...(私はいつも30代のギャングのように話します)

私は 2 つのモデルを持っています - わかりました: 会社 + 日付

セットアップ
Company モデルは、ドロップダウン リスト ビューに添付されます。サーバーから会社のリストを取得します。日付は今日に設定され、日付セレクタ ビューに関連付けられています。初期化時に、これらのモデルは両方とも、アプリ ルーターを介してそれぞれのビューにアタッチされます。これらはメインのナビゲーションを構成し、常にそこにあります。

問題
問題は、これらのモデルとデータが複数のビューで使用されることであり、それらをこれらのビューに渡すためのよりクリーンな方法が必要です。そのため、モデルが変更されたときにモデルとともにイベントを発行するイベント アグリゲーターを使用しました。ただし、モデルが変更されていないため、これは新しいビューの初期化には役立ちません。

4 つのオプション

  1. 日付モデルを localStorage に保存します。モデルが新しいビューによって初期化されるときに取得します。モデルが新しいビューによって初期化されるときに、会社のデータをキャッシュからプルします。

  2. いずれかのモデルをアプリ ルーターから新しい各ビューに渡します。モデルの変更をビューにバインドします。

  3. 優先: 私のイベント システムを使用しますが、新しいビューの初期化の回避策を見つけてください。

  4. 両手を上げて「sc *** it」と言って、ホールの向こう側にいる女性に向かって 1 時間叫ぶ

4

1 に答える 1

2

#2に固執する-インスタンス化されたときにモデルを各ビューに渡す。これは古典的な MVC アーキテクチャであり、この慣習に従うだけで問題ありません。典型的な MVC には、モデルが変更されたときにビューが自分自身を更新できるように、参照として格納されたモデルからのイベントをリッスンする各ビューがあります。通常、モデル オブジェクトはビュー コンストラクターで渡されます。

于 2012-03-01T06:00:40.937 に答える