私が理解していて分かりませんでしたか、それとも理解できていなくて、私はしなかったし、まだしない場合。私はKnockout.jsを理解しました。今はあまり確信していません。
私は、ユーザーが予定を予約できるようにするアプリを構築しています。
画面1:(確認と上を移動するためのオプションリスト、ボタン)の場所とサービスタイプを選択し
画面2:利用可能予定時刻を選択し
(テーブル、ボタンを確認し、上に移動します)画面3:
画面4(確認し、上に移動するには、テキスト入力、ボタン)の名前と連絡先情報を入力します(確認し、上に移動するユーザー、ボタンに尋ねてみた)確認コードを入力してください
画面5:表示確認コード
私はすべてが私のViewModelにあって、私のモデルに属しているものと私のViewModelに属しているものが分からないので、リファクタリングしています。私はちょうどモデルにselectedLocation(項目リストからユーザーピック)を置くが、私はそれを見ることでアクセスできるようにする必要があるので、私はこれをしなかった:
self.selectedLocation = ko.pureComputed({
read: function() {
return self.model.selectedLocation();
},
write: function(value){
self.model.selectedLocation(value);
}
});
ちょうど狂気思われます。
これはViewModelにあるべきですか?モデルでselectedLocation変数を、ViewModelでcurrentlySelectedLocationを使用して、ユーザーがLocationとService Typeを確認したときにmodel.selectedLocationを更新する必要がありますか?
それぞれの画面にはそれぞれ独自のビューモデルが必要ですか?私は単一の.htmlファイルを使用して、ページからページに行くのではなく表示されているものを更新しています。
私は何らかの重要な情報を含めていないと確信しています。私はお詫び申し上げます。ご質問にお答えします。
ご協力いただければ幸いです。
ノックアウトのモデルとビューモデルがぼやけます。あるパターンに固執することを心配しないでください。パターンはあなたを奉仕するために存在し、他の方法ではありません。私は、UIがviewmodel-yとされているかどうかを指示していることがわかります。私がpojsoを取得してUIに表示するだけであれば、それはモデルです。対話的なバインディングが必要なプロパティがある場合は、それをobservableに変換します。コレクションをプッシュまたはポップする必要はありませんか?それは配列です。 UIは応答する必要がありますか?それはobservableArrayです。 – Will