ユーザーがログインすると、サーバーからデータが読み込まれます。 observableArray()への追加のたびに従属オブザーバブルが更新されているように見えるので、これには多くの時間がかかります。すべてのデータがロードされるまで、すべての依存関係の評価を延期したいと思います。私はdeferEvaluation: true
が特定のko.computed()
変数の振る舞いにどのように影響するかを見てきましたが、更新が完了し、ビューを再描画するためにモデル全体を無効にするまで、observableを分離したいと思います。knockoutjsを使用してデータを読み込むときの依存関係を延期する
問題を説明するためにjsfiddleを作成しました。実際のコードでは、オブジェクトをロードするためにマッピングプラグインを使用していますが、ここではすべての状態変更で呼び出される.subscribe
関数を使用してすべての依存関係をシミュレートします。私は最後まで呼び出されないようにしたいと思います。
この解決策の1つの問題は、 'ko.mapping'プラグインでうまく動作しないことです。呼び出しが完了する前に、更新が 'ko.mapping.fromJS'呼び出しの中からディスプレイに伝わるのを見ています。 –