プロジェクトでノックアウト.jsを使用して、モデルをビューにバインドしています。基本的に、document.ready 関数では以下のコードを使用します。
var viewModel = {
firstName: ko.observable("John")
listofChildren=ko.observablearray()
};
ko.applyBindings(viewModel);
dataService.getChildren(viewModel); // This is no good need to move to partial view
ほとんどのページで上記のviewModelを使用できます。ただし、1 つの部分ビューに対して、Jquery によってサード パーティの Web サービスを呼び出し、上記の listOfChildren プロパティを設定する必要があります。
問題は、現時点で webservice への呼び出しが document.ready で発生することです。これは、ページを更新するたびに web サービスが呼び出されることを意味します。ユーザーが部分ビューをロードした場合にのみ呼び出しを行いたいです。
部分ビュー ページでサード パーティの Web サービスへの呼び出しを移動しようとしましたが、viewModel が null であると表示されます。
dataService.getChildren(viewModel); //where dataService is a function which uses ajax call to webservice and populates the listofChildren array.
上記をどのように達成できるか教えてください。