El servicio de $timeout es como el método setTimeout() de JavaScript. La principal diferencia , a parte de que es un servicio, es que al igual que 3.2 $http se actualiza la vista al actualizar el modelo desde $timeout
.
La función $timeout
soporta 3 parámetros:
Al igual que setTimeout() se llama una única vez.
Veamos ahora un simple ejemplo de este servicio .
<!DOCTYPE html> <html ng-app="app"> <head> <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.19/angular.min.js"></script> <script src="script.js"></script> </head> <body ng-controller="PruebaController"> ¿Se ha producido el evento? {{producidoEvento}} </body> </html>
producidoEvento
la cual indicará si se ha producido el evento de $timeout
.
var app=angular.module("app",[]); app.controller("PruebaController",['$scope','$timeout',function($scope,$timeout) { $scope.producidoEvento="NO"; $timeout(function() { $scope.producidoEvento="SIIIIII"; },3000); }]);
$timeout
$timeout
y se le pasa nuestra función.$scope.producidoEvento
y se actualiza automáticamente la vista.