【发布时间】:2017-01-11 16:01:07
【问题描述】:
我是角度框架的新手。这是我的场景,我想在一段时间后更改我的 $scope.variable,所以我使用了 javascript setTimeout 方法。
$scope.variable = 'Previous';
setTimeout(function(){
$scope.variable='NEXT';
},3000);
此代码对我不起作用。我使用$apply() 使这段代码工作。
后来我才知道 Angular 本身有一个 $timeout 服务,它可以做同样的工作。
$scope.variable = 'Previous';
$timeout(function () {
$scope.variable = 'NEXT';
}, 2000);
如何比较 $timeout 服务与 javascript setTimeout 的性能??
为什么我们应该使用$timeout 而不是setTimeout??
请给我一些例子和使用它的理由,它显示了性能。
谢谢:)
【问题讨论】:
-
性能完全取决于当前应用程序内摘要循环的性能。 $timeout 将导致摘要。对于具有大量观察者的应用程序,
$rootScope.$digest()使应用程序冻结,它将再次冻结。就这么简单。
标签: javascript angularjs settimeout angular-services