Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

unidades:03_servicios:03_timeout [2014/07/25 14:39]
admin
unidades:03_servicios:03_timeout [2014/08/29 21:26] (actual)
admin
Línea 2: Línea 2:
 El servicio de [[https://​docs.angularjs.org/​api/​ng/​service/​$timeout|$timeout]] es como el método [[http://​www.w3schools.com/​jsref/​met_win_settimeout.asp|setTimeout()]] de JavaScript. La principal diferencia , a parte de que es un servicio, es que al igual que [[unidades:​03_servicios:​02_http]] se actualiza la vista al actualizar el modelo desde ''​$timeout''​. El servicio de [[https://​docs.angularjs.org/​api/​ng/​service/​$timeout|$timeout]] es como el método [[http://​www.w3schools.com/​jsref/​met_win_settimeout.asp|setTimeout()]] de JavaScript. La principal diferencia , a parte de que es un servicio, es que al igual que [[unidades:​03_servicios:​02_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.
  
 +<note tip>
 +Hay un tercer parámetro pero que no vamos a ver aqui.
 +</​note>​
  
  
 +Al igual que [[http://​www.w3schools.com/​jsref/​met_win_settimeout.asp|setTimeout()]] se llama una única vez.
 +
 +====== Ejemplo ======
 +Veamos ahora un simple ejemplo de este servicio .
 +
 +<sxh html;​title:​index.html;​highlight:​ [10];>
 +<​!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>​
 +</​sxh>​
 +
 +  * Línea 10: Se muestra el valor de la variable ''​producidoEvento''​ la cual indicará si se ha producido el evento de ''​$timeout''​.
 +
 +<sxh js;​title:​index.js;​highlight:​ [3,​6,​7,​8];>​
 +var app=angular.module("​app",​[]);​
 +  ​
 +app.controller("​PruebaController",​['​$scope','​$timeout',​function($scope,​$timeout) {
 +  $scope.producidoEvento="​NO";​
 +  ​
 +  $timeout(function() {
 +    $scope.producidoEvento="​SIIIIII";​
 +  },3000);
 +  ​
 +}]);
 +</​sxh>​
 +
 +  * 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.
 +
 +{{url>​http://​embed.plnkr.co/​FeprPn}}
 +
 +====== Referencias ======
 +  * [[https://​docs.angularjs.org/​api/​ng/​service/​$timeout|$timeout]]
unidades/03_servicios/03_timeout.1406291983.txt.gz · Última modificación: 2014/07/25 14:39 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