以角度保留按钮的视图状态

时间:2015-12-03 12:07:58

标签: angularjs

我有一个标签面板..在其中一个页面中有一个默认“开始”文本的按钮,我将按钮文本更改为“正在进行”并在点击后进行ajax调用按钮文本将被更改为完成..同时,如果我点击其他选项卡上另一个页面加载并返回到具有按钮的标签页,文本是再次“开始”甚至 - 虽然ajax调用尚未完成..我希望文本保持“进展”。有人可以帮助我

angular.module( “应用程序”)。控制器( “jobController”,[$范围,功能($范围){

$scope.jobData = {}
promise = ajax.get(BASE_DB_URL + '/getjob', ajax.getToken());
promise.then(function(response) {$scope.jobData = response}

//Here List will be populated using response each row has a button for running job

//called on click of button
$scope.runJob = function(obj) {



            obj.jobStatusText = "Running Job";
 promise = ajax.get(BASE_DB_URL + '/runjob', ajax.getToken());
            promise.then(function(response) {
                obj.jobStatusText = "Finish";

                setTimeout(function() {
                    obj.jobStatusText = "Run Job";
                    scopeApply();
                }, 500);
                obj.jobStatusText = "Done Successfully"
});
}
}]);

//another controller for one of the tabs 
 angular.module("app").controller("mainCtrl",[$scope,function($scope){




}]);

1 个答案:

答案 0 :(得分:0)

没有代码,很难确切地说出你的问题是什么。我想你正在使用SPA路由(如ng-route)在标签之间切换,并且在路由更改时你的控制器和相关范围正在被销毁。

如果是这样,您可能需要考虑使用stateprovider或服务来保留该状态。如果不是这样,并且您没有在选项卡之间使用路由,我将不得不看到代码,因为任何控制器和范围都应该保留。