リトルパフォーマンスの先端誰かがキーとサービスのデータストアの種類を持っている場合- >値のペア:
dataStoreというサービスがある場合は、ビッグデータオブジェクトが変更されるたびにタイムスタンプを更新できます。この方法では、オブジェクト全体を詳細に監視するのではなく、変更のタイムスタンプのみを監視します。
app.factory('dataStore', function () {
    var store = { data: [], change: [] };
    // when storing the data, updating the timestamp
    store.setData = function(key, data){
        store.data[key] = data;
        store.setChange(key);
    }
    // get the change to watch
    store.getChange = function(key){
        return store.change[key];
    }
    // set the change
    store.setChange = function(key){
        store.change[key] = new Date().getTime();
    }
});
そしてディレクティブでは、変更するタイムスタンプのみを監視しています
app.directive("myDir", function ($scope, dataStore) {
    $scope.dataStore = dataStore;
    $scope.$watch('dataStore.getChange("myKey")', function(newVal, oldVal){
        if(newVal !== oldVal && newVal){
            // Data changed
        }
    });
});