変更をサーバーに自動的に同期したいです。現在、アプリケーション状態をシリアル化し、それを以前のシリアライズされたコピーと比較するために、diff-match-patchを使用してJSONによってハンドラの変更を検出しています(scope.$onEval
ハンドラ)。
これをより効率的にするためにAngularJSに何かが組み込まれているのだろうかと思っていました。
変更をサーバーに自動的に同期したいです。現在、アプリケーション状態をシリアル化し、それを以前のシリアライズされたコピーと比較するために、diff-match-patchを使用してJSONによってハンドラの変更を検出しています(scope.$onEval
ハンドラ)。
これをより効率的にするためにAngularJSに何かが組み込まれているのだろうかと思っていました。
あなたは(つまり$腕時計の点に注意してください。代わりに、文字列/式の引数としての機能を取ることができ、およびバージョン> = 0.10.0で見た値がangular.Object.equalsを使用して比較している代わりに、単一の$onEval
の複数$watch」ESを使用することができます)。それ以外に、私はこれに有用なAngularJSの仕組みを知らない。
私は似たようなことに取り組んでいます。 @ psyhoのように、私は$watchを使って変更をキャッチしています。
scope.$watch("dataObject",function (newValue, oldValue) {
//calculate changes
//send the changes to the server
});
次に、変更内容を計算するためにjquery diffのロジックを使用します。