在非常简短的AngularJS $timeout documentation page上,“延迟”论证被认为是可选的。当使用$ timeout而没有指定延迟时,我注意到仍然会应用延迟。
任何人都可以告诉我,当论证被隐含时,延迟分配了多少时间?
省略$timeout
延迟时,默认为0
。但是,包含在其中的代码块是在Angular操纵DOM之后执行的。查看对AngularJS $evalAsync vs $timeout的回应
我的理解是延迟'0'意味着它将作为下一次事件循环运行的一部分被拾取。这是一个特别短暂但不确定的时间。
它会立即执行,默认值为零。这是一个jsfiddle显示它:http://jsfiddle.net/dgarlitt/rqs3p/1/
angular
.module('myApp',[])
.controller('MyCtrl', function($scope, $timeout) {
$timeout(function() {
$scope.name = 'World';
});
});
默认延迟为0.文档自此更新。