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

Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
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
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
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
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
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
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
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
 

Último (19)

Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
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
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .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
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
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
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
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
 

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