Просмотр исходного кода

(templating) update dynamic dashboard only if variable is changed

Mitsuhiro Tanda 9 лет назад
Родитель
Сommit
f585d22ce7
1 измененных файлов с 7 добавлено и 2 удалено
  1. 7 2
      public/app/features/templating/templateValuesSrv.js

+ 7 - 2
public/app/features/templating/templateValuesSrv.js

@@ -27,10 +27,15 @@ function (angular, _, kbn) {
         .filter(function(variable) {
           return variable.refresh === 2;
         }).map(function(variable) {
+          var previousVariable = angular.copy(variable);
           return self.updateOptions(variable).then(function () {
             return self.variableUpdated(variable).then(function () {
-              dynamicDashboardSrv.update(self.dashboard);
-              $rootScope.$emit('template-variable-value-updated');
+              var updatedVariable = angular.copy(variable);
+              delete(updatedVariable.$$hashKey);
+              if (JSON.stringify(previousVariable) !== JSON.stringify(updatedVariable)) {
+                dynamicDashboardSrv.update(self.dashboard);
+                $rootScope.$emit('template-variable-value-updated');
+              }
             });
           });
         });