范围不更新ionic-angularJs中的视图(使用$ interval)

时间:2015-05-27 23:16:12

标签: angularjs html5 ionic-framework

我在离子+ angularjs中有这个偷偷摸摸的问题。我在控制器中有一些看起来像这样的代码..

$scope.progressval = 0;
var stop = $interval(function() {
      $scope.progressval = $scope.progressval + 1;
       if( $scope.progressval >= 100 ) {
             $interval.cancel(stop);
             $state.go(‘app.b’);
        }
 }, 100);

我的html页面如下所示:

<progress id="progressbar" max="100" value="{{ progressval }}"> </progress>
<div id="progressbarlabel">{{ progressval }} %</div>

是的,我正在尝试更新我页面上的进度条。问题是,当我第一次加载应用程序(在浏览器中)时,我看不到进度条的稳定进度(它确实有效,从某种意义上说,它确实转到了国家b)。但是,当我再次尝试(没有重新加载)它似乎工作。我尝试添加$ scope。$ apply()但也没有帮助。任何反馈将不胜感激..

1 个答案:

答案 0 :(得分:0)

尝试添加$ timeout(调用$ apply)

$scope.progressval = 0;
var stop = $interval(function() {
      $timeout(function(){
         $scope.progressval = $scope.progressval + 1;
      });
       if( $scope.progressval >= 100 ) {
             $interval.cancel(stop);
             $state.go(‘app.b’);
        }
 }, 100);