1

「ほぼ」すべての画面に表示されるルート レベルの HTML がある場合、これをどこでどのように整理しますか?

backbone-boilerplate と requirejs を使用しています。ルート レベル ビューの 1 つは、画面の下部からいつでも呼び出すことができるグローバル ナビゲーション要素です。

これは、モデル (可視性、選択状態、クリックのログなど) を持つモジュールに編成されます。アプリは次の場所に保存されます。

ClientName.app = _.extend( { rootViews: {} }, Backbone.Views);

次に、ルーターの初期化メソッドで、次のものがあります。

ClientName.app.rootViews.globalNav = new GlobalNav.Views.BottomView({ model: new GlobalNav.Models.Bottom()});

それは正常に動作しますが、機能が成長するにつれて、ルーターの初期化メソッドは、同様のルートビュー、サブルーターなどで手に負えなくなります.何かが完全に欠けていますか?

あなたは何をお勧めします?

4

1 に答える 1

1

Marionette.Regionをチェックアウトしましたか? これにより、フッターなどの特定の div にビューを割り当てることができます。アプリの本体領域を、別のページに移動するときに動的に交換できる別の領域として定義できます。

一般に、View Controller として Router を選択するのは適切ではありません。代わりに、この種のことを非常にうまく処理するマリオネットをチェックすることをお勧めします. アプリケーション イベントを使用してページ ナビゲーション コントロールを実装できます。これにより、メイン ビューを接続してリッスンし、リージョンを動的に交換できます。出発点として、Marionette ドキュメントの下部にある良いサンプル アプリを確認してください。

于 2012-04-21T22:07:10.170 に答える