Backbone.js で記述された私の Web アプリケーションには、私が「モード」と呼んでいるものがあります。各モードは、現在アクティブなモデルとビューを示します。ハッシュ (#) のモード パラメータを変更することで、モードを切り替え、必要なバックボーン モデルとビューをインスタンス化します。
また、優先レイアウトを記述し、モード レベルでコンテナーの html コードを挿入することも論理的に思えます。
モード「PopulationPyramidMode」にモデルと 3 つのバックボーン ビューがあるとします。「HeaderView」は、垂直方向に 30 ピクセルを占める必要があります。「SidebarView」は水平方向に 200 ピクセルを占める必要があり、「CanvasView」は画面の水分を満たし、サイズ変更イベントでスケーリングする必要があります。
さらに複雑なことに、CanvasView は、サイズ変更時に再レンダリングする必要があるビジュアライゼーションを保持します。つまり、x/y スケールを再計算する必要があります。
それで、これに対する最善のアプローチは何ですか?
1) レイアウト ロジックはどこに配置する必要がありますか?
- 別の layoutManager で - その場合、どのように?
- 各ビューは、その推奨サイズなどを説明する必要がありますか?
2) レイアウトに必要な HTML/CSS を挿入し、レイアウトを切り替えるにはどうすればよいですか?
<!-- Layout 1 -->
<div id="header"></div>
<div id="sidebar"></div>
<div id="canvas"></div>
<!-- Layout 2 -->
<div id="header"></div>
<div id="canvas"></div>
特定のヒントと、JavaScript レイアウト全般についてありがとうございます。