From 2cc68a9d08e77ffbc4b7a26f7056c23797a99b45 Mon Sep 17 00:00:00 2001 From: jiazhong Date: Wed, 7 Jan 2015 17:20:48 +0800 Subject: [PATCH 1/3] use safeApply in angularjs --- webapp/app/js/controllers/job.js | 12 ++++++++---- webapp/app/js/controllers/page.js | 19 +++++++++++++++++++ 2 files changed, 27 insertions(+), 4 deletions(-) diff --git a/webapp/app/js/controllers/job.js b/webapp/app/js/controllers/job.js index f076b21..d130f45 100644 --- a/webapp/app/js/controllers/job.js +++ b/webapp/app/js/controllers/job.js @@ -134,6 +134,7 @@ KylinApp }); } + $scope.cancel = function (job) { SweetAlert.swal({ title: '', @@ -147,10 +148,13 @@ KylinApp loadingRequest.show(); JobService.cancel({jobId: job.uuid}, {}, function (job) { loadingRequest.hide(); - $scope.jobs[job.uuid] = job; - if (angular.isDefined($scope.state.selectedJob)) { - $scope.state.selectedJob = $scope.jobs[ $scope.state.selectedJob.uuid]; - } + $scope.safeApply(function() { + $scope.jobs[job.uuid] = job; + if (angular.isDefined($scope.state.selectedJob)) { + $scope.state.selectedJob = $scope.jobs[ $scope.state.selectedJob.uuid]; + } + + }); SweetAlert.swal('Success!', 'Job has been discarded successfully!', 'success'); },function(e){ loadingRequest.hide(); diff --git a/webapp/app/js/controllers/page.js b/webapp/app/js/controllers/page.js index 1c80460..cdb4b3e 100644 --- a/webapp/app/js/controllers/page.js +++ b/webapp/app/js/controllers/page.js @@ -167,6 +167,24 @@ KylinApp.controller('PageCtrl', function ($scope, $q, AccessService,$modal, $loc }); + /* + *global method for all scope to use + * */ + + //update scope value to view + $scope.safeApply = function(fn) { + var phase = this.$root.$$phase; + if(phase == '$apply' || phase == '$digest') { + if(fn && (typeof(fn) === 'function')) { + fn(); + } + } else { + this.$apply(fn); + } + }; + + + }); var projCtrl = function ($scope, $modalInstance, ProjectService, MessageService, projects, project,SweetAlert) { @@ -230,5 +248,6 @@ var projCtrl = function ($scope, $modalInstance, ProjectService, MessageService, $modalInstance.dismiss('cancel'); }; + }; From 4de098943ab800d4d8a8b2780e8b1bfacd29c0cf Mon Sep 17 00:00:00 2001 From: jiazhong Date: Fri, 9 Jan 2015 19:04:51 +0800 Subject: [PATCH 2/3] set partial false when rerun --- webapp/app/partials/query/query_detail.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/webapp/app/partials/query/query_detail.html b/webapp/app/partials/query/query_detail.html index 6eb73cd..3da49e8 100644 --- a/webapp/app/partials/query/query_detail.html +++ b/webapp/app/partials/query/query_detail.html @@ -1,6 +1,6 @@
-
+
Note: Current results are partial, please click rerun button to get all results.