0

Knockout を使用して自分のデータを最適に表現する方法に苦労しています。子ビューモデルを含むマスター ビューモデルと、マスター ビューモデルを 1 つだけ持つ方が良いですか? データの表現方法の例を次に示します。

Company { CompanyID, Industry, Name, Address, Phone }

Employee { CompanyID, EmployeeID, Name, Address, Phone }

多くの会社が存在する可能性があり、各会社には多くの従業員がいる可能性があります。ユーザーがプルダウンから会社を選択し、会社のレコードを入力してから、従業員レコードのリストを表示できるようにする必要があります。会社のレコードが変更された場合、会社のレコードを(jSON経由で)サーバーに送り返すだけです。従業員レコードが変更された場合、従業員レコードをサーバーに送り返すだけです。

もちろん、レコードがEmployee読み込まれるまで、Companyレコードが読み込まれないことがあります。

4

1 に答える 1

1

「より良い」ことを考えないようにしてください...代わりに、ビューが必要とするものについて考えてください。必要なモデルを使用してビューモデルを構築します。会社のリストが必要な場合、会社を選択し、従業員のリストをすべて 1 つのビューに表示するには、このモデルの階層を公開するビューモデルを使用できます。

または、複数のビューを作成することもできます: リストから会社を選択するための 1 つ、会社の詳細を表示するための 1 つ、従業員を選択するための 1 つ... おわかりでしょう。次に、各ビューには、そのデータを含む独自のビューモデルがあります。

または、サブ ビューモデルを含むマスター ビューモデルを作成することもできます。

私は通常、1 つの View と 1 つの ViewModel から始めて、ViewModel (またはビュー) が重くなっているように感じるポイントに到達したら、いくつかに分割します。

于 2012-08-28T19:15:14.793 に答える