ViewModel で調整されたすべての計算されたオブザーバブルが評価されるまで待機する可能性はありますか?
そのようなオブザーバブルがたくさんある重いViewModelがあります。また、JSON から入力した直後にプレーンな JS 表現を取得する必要がある場合もありますが、それを実行しようとすると、一部のオブザーバブルがまだ評価されていません。
一種の async を実装しようとしましたtoJS
が、期待どおりに動作しません。私はそこで何か間違ったことをしていますか、それともまったく不可能ですか?
toJSasync = function (vm) {
var deferred = $.Deferred(),
waiter = ko.computed(function () {
return ko.toJS(vm);
});
deferred.resolve( waiter() );
deferred.always(function () {
waiter.dispose();
});
return deferred.promise();
}