这对我来说似乎很奇怪,但我希望有人之前遇到过这个并指出我正确的方向。
我在$ interval内有一个变量在范围内设置,有时值是"坚持"有时候不是。
someInterval = $interval(function() {
SomeFactory.getsomething($scope.highestnumber)
.then(function(response) {
if (response.number > $scope.highestnumber)
$scope.highestnumber = response.number;
});
}, 30000);
大部分时间都有效 - $ scope.highestnumber使用更新后的值设置,30秒后调用getSomething()传递更新后的值。
然而,偶尔(我希望我可以按需复制),$ scope.highestnumber设置了一个新值,但getSomething()被调用它在执行更新之前的值。我已经通过在将scope.highestnumber设置为新值后捕获$ scope.highestnumber的值来验证它,然后检查在下一个周期传入getSomething()的内容。
所以序列就是......