javascript - 如何在angular js中返回或退出$scope函数

标签 javascript angularjs

在某些情况下,我想退出我的 $scope 函数。我正在尝试使用 return。但不幸的是它只从每个循环返回,而不是从主作用域函数返回。在我的代码中,即使 d.xyz 是 true f2 函数也会被调用。如果 d 的 xyz 为真,我想退出 f1。

$scope.f1 = function(){
 angular.foreach(data, function(d){
  if(d.xyz){
   return; // tried with return false also
  }
  if(d.abc){
  //some code 
  }
  $scope.f2();
 })
}

最佳答案

你不能真正退出angular的forEach函数。您能做的最好的事情就是确保在退出条件为真后每次迭代都返回回调。

所以你会这样做:

$scope.f1 = function(){
    var stopRunning = false;
    angular.foreach(data, function(d){
        if(stopRunning){
            return;
        }
        if(d.xyz){
            stopRunning = true;
            return;
        }
        if(d.abc){
            //some code 
        }
        $scope.f2();
    })
}

关于javascript - 如何在angular js中返回或退出$scope函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46072653/

相关文章:

javascript - 用户离开字段后立即显示 AngularJS Bootstrap 工具提示以进行客户端验证

ajax - 带有 AngularJS 的门户类型应用程序(多个独立应用程序)

javascript - 根据用户输入生成文件后下载文件

javascript - 我如何在 Angular JS 中获取基本主机

javascript - Angular $http POST 无法绑定(bind)数组

angularjs - 在回调事件中触发摘要循环

javascript - 在 javascript 中,我是否可以返回我悬停的任何 DOM 元素的元素?

javascript - CKEditor 中的自动链接 URL

javascript - IE9不识别原型(prototype)函数?

如果值不等于,Javascript 值设置为 null