Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 角延迟forEach_Angularjs_Animation_Foreach - Fatal编程技术网

Angularjs 角延迟forEach

Angularjs 角延迟forEach,angularjs,animation,foreach,Angularjs,Animation,Foreach,我有个问题。我正在尝试创建一个动画,在绘制之间有一个超时来更改几个层的颜色 $scope.StartMovementsAnimation = function() { angular.forEach($scope.GameMovements, function(movement){ if (movement == "Green") { $scope.Green = true; } else (movement

我有个问题。我正在尝试创建一个动画,在绘制之间有一个超时来更改几个层的颜色

$scope.StartMovementsAnimation = function()
{
      angular.forEach($scope.GameMovements, function(movement){
       if (movement == "Green")
       {
          $scope.Green = true;
       }
       else (movement == "Orange")
       {
          $scope.Orange = true;
       } 
  });
}
我的问题是,我不知道如何停止或延迟流动循环。我迷路了。我尝试了$timeout、sleep等,但没有成功

有解决办法吗


谢谢,不要用forEach。使用$timeout重复游戏动作数组中的项目数

看看下面的例子。它将把
className
字段从橙色改为绿色,反之亦然,直到变量
left
的值达到0

$scope.className = "orange";
$scope.count = 0;
$scope.startAnimation = function() {
  var left = 10
  var ticker = function() {
    if (left % 2 === 0)
      $scope.className = 'orange'
    else
      $scope.className = 'green'
    left -= 1
    if (left > 0) {
      $timeout(ticker, 1000)
    }
  }

  $timeout(ticker, 1000)
}

不要使用forEach。使用$timeout重复游戏动作数组中的项目数

看看下面的例子。它将把
className
字段从橙色改为绿色,反之亦然,直到变量
left
的值达到0

$scope.className = "orange";
$scope.count = 0;
$scope.startAnimation = function() {
  var left = 10
  var ticker = function() {
    if (left % 2 === 0)
      $scope.className = 'orange'
    else
      $scope.className = 'green'
    left -= 1
    if (left > 0) {
      $timeout(ticker, 1000)
    }
  }

  $timeout(ticker, 1000)
}

非常感谢伊杜森!!非常感谢伊杜森!!