SlideShare una empresa de Scribd logo
1 de 28
Descargar para leer sin conexión
AngularJS
¿Qué es AngularJS?
➔ Es un framework de JavaScript.
➔ Su objetivo es aumentar las aplicaciones HTML5,
añadiendo funcionalidades de programación.
➔ Creado y mantenido por Google desde 2012.
➔ Contiene etiquetas personalizadas adicionales que
pueden ser combinadas con código HTML5.
<script src=http://ajax.googleapis.com/ajax/libs/angularjs/1.2.26/angular.
min.js></script>
Ejemplo: Aplicación ng-app
<!DOCTYPE html>
<html>
<head>
<script src=angular.min.js> </script>
</head>
<body>
<div ng-app>
<p>Name: <input type=text ng-
model=name></p>
<p ng-bind=name></p>
</div>
</body>
</html>
➔ ng-app define una
aplicación AngularJS.
➔ La directiva ng-model se
une al input de HTML5 para
mostrar los datos de
aplicación.
➔ La directiva ng-bind enlaza
los datos del input a la vista
HTML.
Expresión Matemática.
<!DOCTYPE html>
<html>
<head>
<script src=angular.min.js></script>
</head>
<body>
<div ng-app>
<p>My first expression: {{ 5 + 5 }}</p>
</div>
</body>
</html>
➔ Las expresiones se
escriben en llaves
dobles: {{expresión}}.
Variables
<!DOCTYPE html>
<html>
<head>
<script src=angular.min.js></script>
</head>
<body>
<div ng-app ng-init=quantity=2;cost=5>
<p>Total in dollar: {{ quantity * cost }}</p>
</div>
</body>
</html>
➔ Las variables se
definen en ng-init
Contador Numérico
<script src=angular.min.js></script>
<div ng-app ng-controller=myController>
<button ng-click="count = count + 1">Click Me!</button>
<p>{{ count }}</p>
</div>
<script>
function myController($scope) {
$scope.count = 0;
}
</script>
Concatenar Texto
<!DOCTYPE html>
<html>
<head>
<script src=angular.min.js></script>
</head>
<body>
<div ng-app ng-init=firstName='John';lastName='Doe'>
<p>The full name is: {{ firstName + " " + lastName }}
</p>
</div>
</body>
</html>
Ejemplo: Cambiar Nombre.
<script src=angular.min.js></script>
<p>Try to change the names.</p>
<div ng-app ng-controller=personController>
First Name: <input type=text ng-model=firstName><br>
Last Name: <input type=text ng-model=lastName><br>
Full Name: {{firstName + " " + lastName}}
</div>
<script>
function personController($scope)
{
$scope.firstName= "John";
$scope.lastName= "Doe";
}
</script>
➔ La función PersonController: carga datos por defecto.
Vectores
<!DOCTYPE html>
<html>
<head>
<script src=angular.min.js></script>
</head>
<body>
<div ng-app ng-init=points=[1,15,19,2,40]>
<p>The third result is {{ points[2] }}</p>
</div>
</body>
</html>
➔ Se definen en ng-init.
Repetir datos.
<script src=angular.min.js></script>
<div ng-app data-ng-init=names=['Luz','Liz','Ana']>
<p>Looping with ng-repeat:</p>
<ul>
<li ng-repeat="x in names">
{{ x }}
</li>
</ul>
➔ Se utiliza ng-repeat.
Convertir a Mayúsculas
<!DOCTYPE html>
<html>
<head>
<script src= "angular.min.js"></script>
</head>
<body>
<div ng-app>
<p>Name: <input type=text ng-model=nombre></p>
<p>En mayúsculas {{ nombre | uppercase }}</p>
</div>
</body>
</html>
Cálculos con Funciones.
<script src=angular.min.js></script>
<div ng-app ng-controller=costController>
Quantity: <input type=number ng-model=quantity>
Price: <input type=number ng-model=price>
<p>Total = {{ (quantity * price) | currency }}</p>
</div>
<script>
function costController($scope) {
$scope.quantity = 1;
$scope.price = 9.99;
}
</script>
Ordenar Resultados
Alfabéticamente.
<script src=angular.min.js></script>
<div ng-app="" ng-init="names=[
{name:'Ana',country:'Paraguay'},
{name:'Victor',country:'Argentina'},
{name:'Luis',country:'Brasil'}]">
<p>Looping with objects:</p>
<ul>
<li ng-repeat="x in names | orderBy:'country'">
{{ x.name + ', ' + x.country }}</li>
</ul>
</div>
Filtrar Resultados
<script src=angular.min.js></script>
<div ng-app="" ng-init="names=[
{name:'Ana',country:'Paraguay'},
{name:'Victor',country:'Argentina'},
{name:'Luis',country:'Brasil'}]">
<p>Filtering input:</p>
<p><input type="text" ng-model="test"></p>
<ul>
<li ng-repeat="x in names | filter:test |
orderBy:'country'">
{{ x.name + ', ' + x.country }}</li>
</ul>
</div>
Obtener datos de un
WebService Jason
<script src=angular.min.js></script>
<div ng-app ng-controller="customersController">
<ul>
<li ng-repeat="x in names">
{{ x.Name + ', ' + x.Country }}
</li>
</ul>
</div>
<script>
function customersController($scope,$http) {
$http.get("http://www.w3schools.com/website/Customers_JSON.php")
.success(function(response) {$scope.names = response;});
}
</script>
Mostrar resultados en una
Tabla
<script src=angular.min.js></script>
<div ng-app ng-controller="customersController">
<table>
<tr ng-repeat="x in names">
<td>{{ x.Name }}</td>
<td>{{ x.Country }}</td>
</tr>
</table>
</div>
<script>
function customersController($scope,$http) { $http.get("http://www.
w3schools.com/website/Customers_JSON.php") .success(function
(response) {$scope.names = response;});
}
</script>
Añadiendo estilo de
BootStrap
<link rel=stylesheet href=bootstrap.min.css>
<script src=angular.min.js></script>
<div ng-app ng-controller="customersController">
<table class="table table-hover">
<tr ng-repeat="x in names">
<td>{{ x.Name }}</td>
<td>{{ x.Country }}</td>
</tr>
</table>
</div>
<script>
function customersController($scope,$http) {
$http.get("http://www.w3schools.com/website/Customers_JSON.
php")
.success(function(response) {$scope.names = response;});
Obteniendo datos de PHP
<link rel=stylesheet href=bootstrap.min.css>
<script src= angular.min.js></script>
<div ng-app ng-controller="customersController">
<table class="table table-hover">
<tr ng-repeat="x in names">
<td>{{ x.Name }}</td>
<td>{{ x.Country }}</td>
</tr>
</table>
</div>
<script>
function customersController($scope,$http) { $http.get("http://www.
w3schools.com/website/Customers_mysql.php")
.success(function(response) {$scope.names = response;});
} </script>
¿Qué es Ajax?
➔ Son las siglas de Asynchronous JavaScript And XML.
➔ No es un lenguaje de programación sino un conjunto
de tecnologías que nos permiten hacer páginas de
internet más interactivas.
➔ Tecnologías:
(HTML-JavaScript-CSS-DHTML-PHP/ASP/JSP-XML).
➔ La característica fundamental de AJAX es permitir
actualizar parte de una página con información sin
obligar al usuario a realizar una acción.
Ventajas de usar Ajax
➔ Utiliza tecnologías ya existentes.
➔ Soportada por la mayoría de los navegadores
modernos.
➔ Interactividad. El usuario no tiene que esperar hasta
que lleguen los datos del servidor.
➔ Portabilidad (no requiere plug-in como Flash).
➔ Mayor velocidad, esto debido que no hay que retornar
toda la página nuevamente.
➔ La página se asemeja a una aplicación de escritorio.
Desventajas de usar Ajax
➔ Se pierde el concepto de volver a la página anterior.
➔ Si se guarda en favoritos no necesariamente al visitar
nuevamente el sitio se ubique donde estábamos.
➔ La existencia de páginas con AJAX y otras sin esta
tecnología hace que el usuario se desoriente.
➔ Problemas con navegadores antiguos que no
implementan esta tecnología.
➔ Dependiendo de la carga del servidor podemos
experimentar tiempos tardíos de respuesta que
desconciertan al visitante.
Ejemplo:
Signos (solo una parte)
<script src="funciones.js" language="JavaScript"></script>
<link rel="StyleSheet" href="estilos.css" type="text/css">
</head>
<body>
<h1>Signos del horóscopo.</h1>
<div id="menu">
<p><a id="enlace1" href="pagina1.php?cod=1">Aries</a></p>
<p><a id="enlace2" href="pagina1.php?cod=2">Tauro</a></p>
<p><a id="enlace3" href="pagina1.php?cod=3">Geminis</a></p>
</div>
<div id="detalles">Seleccione su signo.</div>
funciones.js (sólo una parte)
function inicializarEventos()
{ var ob;
for(f=1;f<=12;f++)
{
ob=document.getElementById('enlace'+f);
addEvent(ob,'click',presionEnlace,false);
} }
function presionEnlace(e)
{ if (window.event) {
window.event.returnValue=false;
var url=window.event.srcElement.getAttribute('href');
cargarHoroscopo(url);
} }
Código php (sólo una parte)
<?php
header('Content-Type: text/html; charset=ISO-8859-1');
if ($_REQUEST['cod']==1)
echo "<strong>Aries:</strong> Hoy los cambios serán físicos,
personales, de carácter, Te sentirás impulsivo y tomarás
iniciativas.";
if ($_REQUEST['cod']==2)
echo "<strong>Tauro:</strong> Hoy los cambios serán
privados, íntimos. Recuerdos. Ayuda, solidaridad. Tu cónyuge
puede aportar buen status a tu vida o apoyo a tu profesión.";
if ($_REQUEST['cod']==3)
echo "<strong>Géminis:</strong> Día esperanzado, ilusiones.
Mucha energía sexual y fuerza emocional.";
estilos.css (sólo una parte)
#menu {
font-family: Arial;
margin:5px;
}
#detalles {
background-color:#ffc;
text-align:left;
font-family:verdana;
border-width:0;
padding:5px;
border: 1px dotted #fa0;
margin:5px;
}
Probar aquí: http://www.scratchya.com.
ar/problemas/ajaxya/resu/24/pagina1.php?cod=3
Ejemplo: Formulario
<script src="funciones.js" language="JavaScript"></script>
</head>
<body>
<form action="pagina1.php" method="post" id="formulario">
Nombre:<input type="text" name="nombre" id="nombre" size="
20"><br>
Comentarios:<br>
<textarea name="comentarios" id="comentarios" rows="10"
cols="50"></textarea><br>
<input type="submit" value="Enviar" id="enviar">
<div id="resultados"></div>
<a href="comentarios.txt">Ver resultados</a>
</form>
funciones.js (sólo una parte)
function retornarDatos() {
var cad='';
var nom=document.getElementById('nombre').value;
var com=document.getElementById('comentarios').value;
cad='nombre='+encodeURIComponent(nom)
+'&comentarios='+encodeURIComponent(com);
return cad; }
function enviarFormulario()
{
conexion1=crearXMLHttpRequest();
conexion1.onreadystatechange = procesarEventos;
conexion1.open('POST','pagina1.php', true);
Código php
<?php
header('Content-Type: text/html; charset=ISO-8859-1');
$ar=fopen("comentarios.txt","a") or
die("No se pudo abrir el archivo");
fputs($ar,"Nombre:".$_REQUEST['nombre']."n");
fputs($ar,"Comentarios:".$_REQUEST['comentarios']."nn");
fclose($ar);
?>
Probar aquí:
http://www.scratchya.com.
ar/problemas/ajaxya/resu/12/pagina1.html

Más contenido relacionado

La actualidad más candente

Introducción a AngularJS
Introducción a AngularJSIntroducción a AngularJS
Introducción a AngularJSAdrián Paredes
 
Introducciòn a AngularJS
Introducciòn a AngularJSIntroducciòn a AngularJS
Introducciòn a AngularJSRené Olivo
 
Introducción a AngularJS
Introducción a AngularJSIntroducción a AngularJS
Introducción a AngularJSLuis Natividad
 
Taller de Angular JS: La solución tecnológica perfecta
Taller de Angular JS: La solución tecnológica perfectaTaller de Angular JS: La solución tecnológica perfecta
Taller de Angular JS: La solución tecnológica perfectaOpenExpoES
 
Angular.js
Angular.jsAngular.js
Angular.jsGDG Cali
 
Login social con node.js
Login social con node.jsLogin social con node.js
Login social con node.jsCarlos Azaustre
 
Hack2Progress - Desarrollando una aplicación web con AngularJS
Hack2Progress - Desarrollando una aplicación web con AngularJSHack2Progress - Desarrollando una aplicación web con AngularJS
Hack2Progress - Desarrollando una aplicación web con AngularJSCarlos Azaustre
 
Angular js Frontenders Valencia
Angular js Frontenders ValenciaAngular js Frontenders Valencia
Angular js Frontenders ValenciaJavier Ruiz
 
Introducción a Knockout
Introducción a KnockoutIntroducción a Knockout
Introducción a KnockoutOscar Gensollen
 
Curso de Desarrollo Web de Platzi
Curso de Desarrollo Web de PlatziCurso de Desarrollo Web de Platzi
Curso de Desarrollo Web de PlatziCarlos Azaustre
 
Introducción a AngularJS
Introducción a AngularJS Introducción a AngularJS
Introducción a AngularJS Marcos Reynoso
 
Javascript en proyectos reales: jQuery
Javascript en proyectos reales: jQueryJavascript en proyectos reales: jQuery
Javascript en proyectos reales: jQueryDavid Arango
 
Workshop 7: Single Page Applications
Workshop 7: Single Page ApplicationsWorkshop 7: Single Page Applications
Workshop 7: Single Page ApplicationsVisual Engineering
 

La actualidad más candente (20)

Introducción a AngularJS
Introducción a AngularJSIntroducción a AngularJS
Introducción a AngularJS
 
Por qué AngularJS
Por qué AngularJSPor qué AngularJS
Por qué AngularJS
 
AngularJS
AngularJSAngularJS
AngularJS
 
Introducción a Angular JS
Introducción a Angular JSIntroducción a Angular JS
Introducción a Angular JS
 
Introducciòn a AngularJS
Introducciòn a AngularJSIntroducciòn a AngularJS
Introducciòn a AngularJS
 
Introducción a AngularJS
Introducción a AngularJSIntroducción a AngularJS
Introducción a AngularJS
 
Taller de Angular JS: La solución tecnológica perfecta
Taller de Angular JS: La solución tecnológica perfectaTaller de Angular JS: La solución tecnológica perfecta
Taller de Angular JS: La solución tecnológica perfecta
 
Angular.js
Angular.jsAngular.js
Angular.js
 
Angular Conceptos Practicos 1
Angular Conceptos Practicos 1Angular Conceptos Practicos 1
Angular Conceptos Practicos 1
 
Login social con node.js
Login social con node.jsLogin social con node.js
Login social con node.js
 
Hack2Progress - Desarrollando una aplicación web con AngularJS
Hack2Progress - Desarrollando una aplicación web con AngularJSHack2Progress - Desarrollando una aplicación web con AngularJS
Hack2Progress - Desarrollando una aplicación web con AngularJS
 
Angular js Frontenders Valencia
Angular js Frontenders ValenciaAngular js Frontenders Valencia
Angular js Frontenders Valencia
 
Advanced angular 1
Advanced angular 1Advanced angular 1
Advanced angular 1
 
Introducción a Knockout
Introducción a KnockoutIntroducción a Knockout
Introducción a Knockout
 
Curso de Desarrollo Web de Platzi
Curso de Desarrollo Web de PlatziCurso de Desarrollo Web de Platzi
Curso de Desarrollo Web de Platzi
 
Curso de HTML5
Curso de HTML5Curso de HTML5
Curso de HTML5
 
Introducción a AngularJS
Introducción a AngularJS Introducción a AngularJS
Introducción a AngularJS
 
Javascript en proyectos reales: jQuery
Javascript en proyectos reales: jQueryJavascript en proyectos reales: jQuery
Javascript en proyectos reales: jQuery
 
Workshop 7: Single Page Applications
Workshop 7: Single Page ApplicationsWorkshop 7: Single Page Applications
Workshop 7: Single Page Applications
 
JavaScript desde Cero
JavaScript desde CeroJavaScript desde Cero
JavaScript desde Cero
 

Similar a 6.angular js

Desarrollando aplicaciones web usando Catalyst y jQuery
Desarrollando aplicaciones web usando Catalyst y jQueryDesarrollando aplicaciones web usando Catalyst y jQuery
Desarrollando aplicaciones web usando Catalyst y jQueryJavier P.
 
Estándares Web con Chico UI
Estándares Web con Chico UIEstándares Web con Chico UI
Estándares Web con Chico UIGuillermo Paz
 
Grails: Framework para el desarrollo de aplicaciones Web No 3
Grails: Framework para el desarrollo de aplicaciones Web No 3Grails: Framework para el desarrollo de aplicaciones Web No 3
Grails: Framework para el desarrollo de aplicaciones Web No 3Esteban Saavedra
 
Desarrollo de aplicaciones web usando Catalyst y jQuery
Desarrollo de aplicaciones web usando Catalyst y jQueryDesarrollo de aplicaciones web usando Catalyst y jQuery
Desarrollo de aplicaciones web usando Catalyst y jQueryJavier P.
 
Accesibilidad práctica con HTML5, CSS3 y WAI-ARIA
Accesibilidad práctica con HTML5, CSS3 y WAI-ARIAAccesibilidad práctica con HTML5, CSS3 y WAI-ARIA
Accesibilidad práctica con HTML5, CSS3 y WAI-ARIAManuel Razzari
 
Desarrollo de aplicaciones web usando Catalyst y jQuery
Desarrollo de aplicaciones web usando Catalyst y jQueryDesarrollo de aplicaciones web usando Catalyst y jQuery
Desarrollo de aplicaciones web usando Catalyst y jQueryJavier P.
 
Introducción a JQuery
Introducción a JQueryIntroducción a JQuery
Introducción a JQueryContinuum
 
Seminario jquery, html5 y wicket
Seminario jquery, html5 y wicketSeminario jquery, html5 y wicket
Seminario jquery, html5 y wicketAdrià Solé Orrit
 

Similar a 6.angular js (20)

Introducción a AngularJS
Introducción a AngularJSIntroducción a AngularJS
Introducción a AngularJS
 
De HTML a Express
De HTML a ExpressDe HTML a Express
De HTML a Express
 
5.java script
5.java script5.java script
5.java script
 
Desarrollando aplicaciones web usando Catalyst y jQuery
Desarrollando aplicaciones web usando Catalyst y jQueryDesarrollando aplicaciones web usando Catalyst y jQuery
Desarrollando aplicaciones web usando Catalyst y jQuery
 
Estándares Web con Chico UI
Estándares Web con Chico UIEstándares Web con Chico UI
Estándares Web con Chico UI
 
Grails: Framework para el desarrollo de aplicaciones Web No 3
Grails: Framework para el desarrollo de aplicaciones Web No 3Grails: Framework para el desarrollo de aplicaciones Web No 3
Grails: Framework para el desarrollo de aplicaciones Web No 3
 
Desarrollo de aplicaciones web usando Catalyst y jQuery
Desarrollo de aplicaciones web usando Catalyst y jQueryDesarrollo de aplicaciones web usando Catalyst y jQuery
Desarrollo de aplicaciones web usando Catalyst y jQuery
 
Curso AngularJS - 7. temas avanzados
Curso AngularJS - 7. temas avanzadosCurso AngularJS - 7. temas avanzados
Curso AngularJS - 7. temas avanzados
 
Accesibilidad práctica con HTML5, CSS3 y WAI-ARIA
Accesibilidad práctica con HTML5, CSS3 y WAI-ARIAAccesibilidad práctica con HTML5, CSS3 y WAI-ARIA
Accesibilidad práctica con HTML5, CSS3 y WAI-ARIA
 
Desarrollo de aplicaciones web usando Catalyst y jQuery
Desarrollo de aplicaciones web usando Catalyst y jQueryDesarrollo de aplicaciones web usando Catalyst y jQuery
Desarrollo de aplicaciones web usando Catalyst y jQuery
 
Javascript y Jquery
Javascript y JqueryJavascript y Jquery
Javascript y Jquery
 
JAVASCRIPT.pptx
JAVASCRIPT.pptxJAVASCRIPT.pptx
JAVASCRIPT.pptx
 
En 20 minutos ... jQuery
En 20 minutos ... jQueryEn 20 minutos ... jQuery
En 20 minutos ... jQuery
 
Ajax
AjaxAjax
Ajax
 
JqueryMobile
JqueryMobile JqueryMobile
JqueryMobile
 
Introducción a JQuery
Introducción a JQueryIntroducción a JQuery
Introducción a JQuery
 
Laboratorio 03
Laboratorio 03Laboratorio 03
Laboratorio 03
 
myprofly
myproflymyprofly
myprofly
 
Seminario jquery, html5 y wicket
Seminario jquery, html5 y wicketSeminario jquery, html5 y wicket
Seminario jquery, html5 y wicket
 
Ajax Huancayo
Ajax HuancayoAjax Huancayo
Ajax Huancayo
 

Más de Ramiro Estigarribia Canese

8.Flujo, Comportamiento, Patrones y WebApps.pdf
8.Flujo, Comportamiento, Patrones y WebApps.pdf8.Flujo, Comportamiento, Patrones y WebApps.pdf
8.Flujo, Comportamiento, Patrones y WebApps.pdfRamiro Estigarribia Canese
 

Más de Ramiro Estigarribia Canese (20)

8.Flujo, Comportamiento, Patrones y WebApps.pdf
8.Flujo, Comportamiento, Patrones y WebApps.pdf8.Flujo, Comportamiento, Patrones y WebApps.pdf
8.Flujo, Comportamiento, Patrones y WebApps.pdf
 
Principios que Guían la Práctica
Principios que Guían la PrácticaPrincipios que Guían la Práctica
Principios que Guían la Práctica
 
CSS - Hojas de Estilo en Cascada.pdf
CSS -  Hojas de Estilo en Cascada.pdfCSS -  Hojas de Estilo en Cascada.pdf
CSS - Hojas de Estilo en Cascada.pdf
 
Python conceptos básicos
Python   conceptos básicosPython   conceptos básicos
Python conceptos básicos
 
Diseño de WebApps
Diseño de WebAppsDiseño de WebApps
Diseño de WebApps
 
Diseño basado en patrones
Diseño basado en patronesDiseño basado en patrones
Diseño basado en patrones
 
Servicios web
Servicios webServicios web
Servicios web
 
Especificaciones de los procesadores
Especificaciones de los procesadoresEspecificaciones de los procesadores
Especificaciones de los procesadores
 
Lenguaje de programación awk
Lenguaje de programación awkLenguaje de programación awk
Lenguaje de programación awk
 
Bases de datos con PHP y PDO
Bases de datos con PHP y PDOBases de datos con PHP y PDO
Bases de datos con PHP y PDO
 
Bases de datos con PHP y Mysqli
Bases de datos con PHP y MysqliBases de datos con PHP y Mysqli
Bases de datos con PHP y Mysqli
 
Interfaz de usuario
Interfaz de usuarioInterfaz de usuario
Interfaz de usuario
 
Variables del sistema en php
Variables del sistema en phpVariables del sistema en php
Variables del sistema en php
 
Funciones en php
Funciones en phpFunciones en php
Funciones en php
 
Bootstrap menues, contenedores y formularios
Bootstrap   menues, contenedores y formulariosBootstrap   menues, contenedores y formularios
Bootstrap menues, contenedores y formularios
 
Estructuras de control en bash
Estructuras de control en bashEstructuras de control en bash
Estructuras de control en bash
 
Visual studio code
Visual studio codeVisual studio code
Visual studio code
 
Diseño de software
Diseño de softwareDiseño de software
Diseño de software
 
Herramienta cacti
Herramienta cactiHerramienta cacti
Herramienta cacti
 
Monitoreo de datacenter
Monitoreo de datacenterMonitoreo de datacenter
Monitoreo de datacenter
 

Último

Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxlosdiosesmanzaneros
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilJuanGallardo438714
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfAnnimoUno1
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfvladimiroflores1
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 

Último (15)

Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptx
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmeril
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 

6.angular js

  • 2. ¿Qué es AngularJS? ➔ Es un framework de JavaScript. ➔ Su objetivo es aumentar las aplicaciones HTML5, añadiendo funcionalidades de programación. ➔ Creado y mantenido por Google desde 2012. ➔ Contiene etiquetas personalizadas adicionales que pueden ser combinadas con código HTML5. <script src=http://ajax.googleapis.com/ajax/libs/angularjs/1.2.26/angular. min.js></script>
  • 3. Ejemplo: Aplicación ng-app <!DOCTYPE html> <html> <head> <script src=angular.min.js> </script> </head> <body> <div ng-app> <p>Name: <input type=text ng- model=name></p> <p ng-bind=name></p> </div> </body> </html> ➔ ng-app define una aplicación AngularJS. ➔ La directiva ng-model se une al input de HTML5 para mostrar los datos de aplicación. ➔ La directiva ng-bind enlaza los datos del input a la vista HTML.
  • 4. Expresión Matemática. <!DOCTYPE html> <html> <head> <script src=angular.min.js></script> </head> <body> <div ng-app> <p>My first expression: {{ 5 + 5 }}</p> </div> </body> </html> ➔ Las expresiones se escriben en llaves dobles: {{expresión}}.
  • 5. Variables <!DOCTYPE html> <html> <head> <script src=angular.min.js></script> </head> <body> <div ng-app ng-init=quantity=2;cost=5> <p>Total in dollar: {{ quantity * cost }}</p> </div> </body> </html> ➔ Las variables se definen en ng-init
  • 6. Contador Numérico <script src=angular.min.js></script> <div ng-app ng-controller=myController> <button ng-click="count = count + 1">Click Me!</button> <p>{{ count }}</p> </div> <script> function myController($scope) { $scope.count = 0; } </script>
  • 7. Concatenar Texto <!DOCTYPE html> <html> <head> <script src=angular.min.js></script> </head> <body> <div ng-app ng-init=firstName='John';lastName='Doe'> <p>The full name is: {{ firstName + " " + lastName }} </p> </div> </body> </html>
  • 8. Ejemplo: Cambiar Nombre. <script src=angular.min.js></script> <p>Try to change the names.</p> <div ng-app ng-controller=personController> First Name: <input type=text ng-model=firstName><br> Last Name: <input type=text ng-model=lastName><br> Full Name: {{firstName + " " + lastName}} </div> <script> function personController($scope) { $scope.firstName= "John"; $scope.lastName= "Doe"; } </script> ➔ La función PersonController: carga datos por defecto.
  • 9. Vectores <!DOCTYPE html> <html> <head> <script src=angular.min.js></script> </head> <body> <div ng-app ng-init=points=[1,15,19,2,40]> <p>The third result is {{ points[2] }}</p> </div> </body> </html> ➔ Se definen en ng-init.
  • 10. Repetir datos. <script src=angular.min.js></script> <div ng-app data-ng-init=names=['Luz','Liz','Ana']> <p>Looping with ng-repeat:</p> <ul> <li ng-repeat="x in names"> {{ x }} </li> </ul> ➔ Se utiliza ng-repeat.
  • 11. Convertir a Mayúsculas <!DOCTYPE html> <html> <head> <script src= "angular.min.js"></script> </head> <body> <div ng-app> <p>Name: <input type=text ng-model=nombre></p> <p>En mayúsculas {{ nombre | uppercase }}</p> </div> </body> </html>
  • 12. Cálculos con Funciones. <script src=angular.min.js></script> <div ng-app ng-controller=costController> Quantity: <input type=number ng-model=quantity> Price: <input type=number ng-model=price> <p>Total = {{ (quantity * price) | currency }}</p> </div> <script> function costController($scope) { $scope.quantity = 1; $scope.price = 9.99; } </script>
  • 13. Ordenar Resultados Alfabéticamente. <script src=angular.min.js></script> <div ng-app="" ng-init="names=[ {name:'Ana',country:'Paraguay'}, {name:'Victor',country:'Argentina'}, {name:'Luis',country:'Brasil'}]"> <p>Looping with objects:</p> <ul> <li ng-repeat="x in names | orderBy:'country'"> {{ x.name + ', ' + x.country }}</li> </ul> </div>
  • 14. Filtrar Resultados <script src=angular.min.js></script> <div ng-app="" ng-init="names=[ {name:'Ana',country:'Paraguay'}, {name:'Victor',country:'Argentina'}, {name:'Luis',country:'Brasil'}]"> <p>Filtering input:</p> <p><input type="text" ng-model="test"></p> <ul> <li ng-repeat="x in names | filter:test | orderBy:'country'"> {{ x.name + ', ' + x.country }}</li> </ul> </div>
  • 15. Obtener datos de un WebService Jason <script src=angular.min.js></script> <div ng-app ng-controller="customersController"> <ul> <li ng-repeat="x in names"> {{ x.Name + ', ' + x.Country }} </li> </ul> </div> <script> function customersController($scope,$http) { $http.get("http://www.w3schools.com/website/Customers_JSON.php") .success(function(response) {$scope.names = response;}); } </script>
  • 16. Mostrar resultados en una Tabla <script src=angular.min.js></script> <div ng-app ng-controller="customersController"> <table> <tr ng-repeat="x in names"> <td>{{ x.Name }}</td> <td>{{ x.Country }}</td> </tr> </table> </div> <script> function customersController($scope,$http) { $http.get("http://www. w3schools.com/website/Customers_JSON.php") .success(function (response) {$scope.names = response;}); } </script>
  • 17. Añadiendo estilo de BootStrap <link rel=stylesheet href=bootstrap.min.css> <script src=angular.min.js></script> <div ng-app ng-controller="customersController"> <table class="table table-hover"> <tr ng-repeat="x in names"> <td>{{ x.Name }}</td> <td>{{ x.Country }}</td> </tr> </table> </div> <script> function customersController($scope,$http) { $http.get("http://www.w3schools.com/website/Customers_JSON. php") .success(function(response) {$scope.names = response;});
  • 18. Obteniendo datos de PHP <link rel=stylesheet href=bootstrap.min.css> <script src= angular.min.js></script> <div ng-app ng-controller="customersController"> <table class="table table-hover"> <tr ng-repeat="x in names"> <td>{{ x.Name }}</td> <td>{{ x.Country }}</td> </tr> </table> </div> <script> function customersController($scope,$http) { $http.get("http://www. w3schools.com/website/Customers_mysql.php") .success(function(response) {$scope.names = response;}); } </script>
  • 19. ¿Qué es Ajax? ➔ Son las siglas de Asynchronous JavaScript And XML. ➔ No es un lenguaje de programación sino un conjunto de tecnologías que nos permiten hacer páginas de internet más interactivas. ➔ Tecnologías: (HTML-JavaScript-CSS-DHTML-PHP/ASP/JSP-XML). ➔ La característica fundamental de AJAX es permitir actualizar parte de una página con información sin obligar al usuario a realizar una acción.
  • 20. Ventajas de usar Ajax ➔ Utiliza tecnologías ya existentes. ➔ Soportada por la mayoría de los navegadores modernos. ➔ Interactividad. El usuario no tiene que esperar hasta que lleguen los datos del servidor. ➔ Portabilidad (no requiere plug-in como Flash). ➔ Mayor velocidad, esto debido que no hay que retornar toda la página nuevamente. ➔ La página se asemeja a una aplicación de escritorio.
  • 21. Desventajas de usar Ajax ➔ Se pierde el concepto de volver a la página anterior. ➔ Si se guarda en favoritos no necesariamente al visitar nuevamente el sitio se ubique donde estábamos. ➔ La existencia de páginas con AJAX y otras sin esta tecnología hace que el usuario se desoriente. ➔ Problemas con navegadores antiguos que no implementan esta tecnología. ➔ Dependiendo de la carga del servidor podemos experimentar tiempos tardíos de respuesta que desconciertan al visitante.
  • 22. Ejemplo: Signos (solo una parte) <script src="funciones.js" language="JavaScript"></script> <link rel="StyleSheet" href="estilos.css" type="text/css"> </head> <body> <h1>Signos del horóscopo.</h1> <div id="menu"> <p><a id="enlace1" href="pagina1.php?cod=1">Aries</a></p> <p><a id="enlace2" href="pagina1.php?cod=2">Tauro</a></p> <p><a id="enlace3" href="pagina1.php?cod=3">Geminis</a></p> </div> <div id="detalles">Seleccione su signo.</div>
  • 23. funciones.js (sólo una parte) function inicializarEventos() { var ob; for(f=1;f<=12;f++) { ob=document.getElementById('enlace'+f); addEvent(ob,'click',presionEnlace,false); } } function presionEnlace(e) { if (window.event) { window.event.returnValue=false; var url=window.event.srcElement.getAttribute('href'); cargarHoroscopo(url); } }
  • 24. Código php (sólo una parte) <?php header('Content-Type: text/html; charset=ISO-8859-1'); if ($_REQUEST['cod']==1) echo "<strong>Aries:</strong> Hoy los cambios serán físicos, personales, de carácter, Te sentirás impulsivo y tomarás iniciativas."; if ($_REQUEST['cod']==2) echo "<strong>Tauro:</strong> Hoy los cambios serán privados, íntimos. Recuerdos. Ayuda, solidaridad. Tu cónyuge puede aportar buen status a tu vida o apoyo a tu profesión."; if ($_REQUEST['cod']==3) echo "<strong>Géminis:</strong> Día esperanzado, ilusiones. Mucha energía sexual y fuerza emocional.";
  • 25. estilos.css (sólo una parte) #menu { font-family: Arial; margin:5px; } #detalles { background-color:#ffc; text-align:left; font-family:verdana; border-width:0; padding:5px; border: 1px dotted #fa0; margin:5px; } Probar aquí: http://www.scratchya.com. ar/problemas/ajaxya/resu/24/pagina1.php?cod=3
  • 26. Ejemplo: Formulario <script src="funciones.js" language="JavaScript"></script> </head> <body> <form action="pagina1.php" method="post" id="formulario"> Nombre:<input type="text" name="nombre" id="nombre" size=" 20"><br> Comentarios:<br> <textarea name="comentarios" id="comentarios" rows="10" cols="50"></textarea><br> <input type="submit" value="Enviar" id="enviar"> <div id="resultados"></div> <a href="comentarios.txt">Ver resultados</a> </form>
  • 27. funciones.js (sólo una parte) function retornarDatos() { var cad=''; var nom=document.getElementById('nombre').value; var com=document.getElementById('comentarios').value; cad='nombre='+encodeURIComponent(nom) +'&comentarios='+encodeURIComponent(com); return cad; } function enviarFormulario() { conexion1=crearXMLHttpRequest(); conexion1.onreadystatechange = procesarEventos; conexion1.open('POST','pagina1.php', true);
  • 28. Código php <?php header('Content-Type: text/html; charset=ISO-8859-1'); $ar=fopen("comentarios.txt","a") or die("No se pudo abrir el archivo"); fputs($ar,"Nombre:".$_REQUEST['nombre']."n"); fputs($ar,"Comentarios:".$_REQUEST['comentarios']."nn"); fclose($ar); ?> Probar aquí: http://www.scratchya.com. ar/problemas/ajaxya/resu/12/pagina1.html