在Angular中在后台运行循环

vrg*_*ost 0 javascript angularjs

我不确定我有什么选项,我想在一个在后台运行的控制器中运行一个循环并且每隔几毫秒步进一次,它只会改变按钮上的颜色,希望它从绿色变为橙色然后回来使用ng风格.

什么是在后台运行循环的合理方法,出于显而易见的原因,我想避免锁定整个页面只是为了让按钮改变颜色.

Wil*_*aul 5

由于你使用的是Angular,你应该使用Angular解决方案:$interval.

一个简单的例子,假设您在范围中使用布尔值来确定按钮是绿色还是橙色:

angular.module('myApp', [])
    .controller('myController', ['$scope', '$interval',
        function($scope, $interval) {
            $scope.isGreen = true;

            $interval(function() {
                $scope.isGreen = !$scope.isGreen;
            }, 1000);
        }
    ]);
Run Code Online (Sandbox Code Playgroud)

这将$scope.isGreen每秒切换一次.