0

多数のプロパティを持つ既存の ViewModel がありますが、ビューにドロップダウンを設定するための列挙型のリストもあります。

Knockout.js を使用していて、Json 情報を投稿しようとしているときに、次のように呼び出していることに気付きました。

ko.toJSON(viewModel);

データを保存するためにサーバーに送り返すときに必要のない列挙型を含め、送り返すときにすべてのモデルを変換します。

データを a にラップして投稿することを提案しましたが、Knockout を使用して列挙型を使用せずにデータ値のみを投稿する、きれいで簡単な方法はありますか? これを行う最善の方法は何ですか?ViewModel に列挙型を含める必要がありますか、それとも設計が悪いのでしょうか?

4

2 に答える 2

2

同様の質問に対する私の回答を確認してください: https://stackoverflow.com/a/14629775/91189

はい、ビューモデルには、ビューに必要なすべてのデータ、列挙型などが含まれている必要があります。サーバーに投稿するデータには、ビュー モデルのすべてのデータが含まれている必要はありません。簡単な方法は、サーバーにデータを送信する準備ができたら、要求に必要なデータだけを含むモデルを構築することです。

少し異なる、より組み込みのアプローチは、モデルをビュー モデルのプロパティとして公開し、ビューを必要な場所にバインドすることです。そうすれば、モデルが事前に構築され、いつでも送信できるようになります。

于 2013-05-09T00:49:51.280 に答える