Tabla de Contenidos

3.3 $timeout

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:

  • fn: La función a llamar cuando acaba el timeout
  • tiempo: El tiempo en milisegundos que debe pasar para que se llame a la función.

Hay un tercer parámetro pero que no vamos a ver aqui.

Al igual que setTimeout() se llama una única vez.

Ejemplo

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">
    &iquest;Se ha producido el evento? {{producidoEvento}}
  </body>
 
</html>

  • Línea 10: Se muestra el valor de la variable 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);
  
}]);

  • Línea 3: Se inyecta el servicio de $timeout
  • Línea 6: Se llama a la función de $timeout y se le pasa nuestra función.
  • Línea 7: Se cambia el valor de la variable $scope.producidoEvento y se actualiza automáticamente la vista.

Referencias

unidades/03_servicios/03_timeout.txt · Última modificación: 2014/08/29 21:26 por admin
Ir hasta arriba
CC Attribution-Share Alike 3.0 Unported
chimeric.de = chi`s home Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0