バックボーンで構築しているアプリのアーキテクチャに関するガイダンスを探しています。
これは基本的に、初期データセットに基づいてデータを計算する複数ページのアプリです。初期データセットは国固有であり、JSON ファイルから取り込まれています。
アプリが起動すると、データセットがデフォルトとして使用されます: メインの Backbone.Model. 次に、これらのデフォルトを処理/計算して、追加のモデル属性として設定する必要があります。これらの属性は、アプリの状態を表します。一部は UI からオーバーライドできます。要約すると、私はシングルトンの Backbone.Model を使用して初期データを保存しています。次に、モデルの初期化メソッドで残りのデータを構築しています。
次に、model.change イベントでデータセット属性を再計算します。これにより、データを再計算するモデルのカスタム メソッド updateAttributes() が起動されます。最初に初期化メソッドで、次に updateAttributes メソッドで属性を計算しているため、かなり非効率的であるように思えます。
値がすべて処理されると、データ セットが完成し、アプリ テンプレートに適用できます。ここで注意が必要なのは、セット内の計算されたデータの一部が UI から編集できるようになったことです。これらの既定の属性が UI から編集されたら、updateAttributes メソッドで値を再計算したくありません。それらは既定のデータではなく、userDefined データになっているからです。
この時点からどこに行くべきかよくわかりません。(急速に拡大している) モデルに attributeNameSetFromUI: true などの属性を設定し、 updateAttributes() メソッドに if() ステートメントをいくつか設定してチェックすることを考えています。これらについては、デフォルトが必要ない場合は計算のその部分をスキップしてください。
大きなシングルトン モデルが適しているかどうかさえわかりませんが、十分に機能しているようです。
このシナリオに関するヒントがあれば、それは素晴らしいことです。Backbone を初めて使用するので、非常にやりがいを感じています。