随机函数触发$digest()错误
Random function triggering $digest() error
我正在开发我的第一个角度应用程序,并收到以下错误:
未捕获错误:已达到10$digest()迭代。正在中止!
我想我已经将源代码与random()函数的使用隔离开来。从我读到的关于这个错误的内容来看,这似乎是有道理的(https://github.com/angular/angular.js/issues/705)。然而,我不知道如何避免这个错误。
我用这个简单的代码重新创建了错误:
randtest.js:
function FirstCtrl($scope) {
$scope.randNum= function(){
var rando = Math.floor(Math.random()*100);
return rando;
};
}
index.html
<!doctype html>
<html ng-app>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.7/angular.min.js"></script>
<script src="randtest.js"></script>
</head>
<body>
<div ng-controller="FirstCtrl">
<h1>{{randNum()}}</h1>
</div>
</body>
</html>
var r = function(){
var rando = Math.floor(Math.random()*100);
return rando;
};
$scope.randomNum =r();
HTML:
<h1>{{randomNum}}</h1>
点击此处
更新-不将计算包装在函数中似乎也可以避免错误:
$scope.randomNum = Math.floor(Math.random()*100);
错误发生的原因我无法理解…
您提到的错误通常发生在您对属性创建更改循环时。
例如,当您观察某个属性的更改,然后在侦听器上更改该属性的值时。请确保您的代码不存在这种情况。
相关文章:
- Angular-错误:达到10$digest()迭代.正在中止
- 如何避免$digest正在进行中的错误
- AngularJS错误:$rootScope:infdig Infinite$digest循环:达到10次$digest
- $digest不久之后$watch定义触发“$apply已经在进行中.“错误
- AngularJS 错误:$rootScope:infdig 无限$digest循环
- JavaScript 运行时错误:[$rootScope:infdig] 达到 10 次$digest() 迭代.中止!
- AngularJs:错误:用于配对项目的自定义筛选器引发错误:“达到 10 次 $digest() 迭代.流产!
- AngularJS orderBy与ngModel相同的属性引发$digest错误
- AngularJS:未捕获错误:已达到[$rootScope:infdig]10$digest()迭代
- 调用ng-erepeat内部的API函数,提示错误.达到10$digest()迭代.在angularjs中中止
- 角度$digest错误
- 错误:在同一个angular Js函数中使用两个Http请求调用时,$digest已经在进行中
- 角度错误:达到10$digest()迭代
- 在角度1.1.x中为ng重复写入的滤波器的$digest迭代错误
- 随机函数触发$digest()错误
- Angular JS错误:达到10$digest()迭代.正在中止
- 避免“$digest already in progress”;错误
- 谷歌地图显示未捕获的错误:达到10次$digest()迭代.流产!角的应用
- 错误:[$rootScope:inprog] $digest已经在进行中
- 避免$watch()循环导致$digest已经在进行中的错误