SlideShare una empresa de Scribd logo
2
Lo más leído
4
Lo más leído
6
Lo más leído
Vue.js
¿a que viene tanto hype?
El problema fundamental
Frameworks de JS
1ª generación
2ª generación
3ª generación
¡ Se dice /vjuː/ !
¿ Sabes que estoy
aprendiendo vue ?
Lo simple es fácil
<script src="https://unpkg.com/vue"></script>
Lo simple es fácil
<div id="app">
{{message}}
</div>
Declarative
Rendering
var app = new Vue({
el: '#app',
data: {
message: 'hola vue!',
},
});
HTML JavaScript
Condicionales y Bucles
var app = new Vue({
el: '#app',
data: {
frameworks: ['React',
'Vue.js',
'Angular.io'],
},
methods: {
isCool(framework) {
return framework === 'Vue.js';
},
},
});
<div id="app">
<ul>
<li v-for="framework in frameworks">
{{framework}}
<span v-if="isCool(framework)">
, so cool!
</span>
</li>
</ul>
</div>
HTML JavaScript
Eventos
var app = new Vue({
...
methods: {
isCool(framework) {
return this.cool.indexOf(framework) !== -1;
},
toggleCool(framework) {
if( this.isCool(framework) )
this.cool.splice(this.cool.indexOf(framework),1);
else
this.cool.push(framework);
}
},
});
<ul>
<li
v-for="framework in frameworks"
@click="toggleCool(framework)">
{{framework}}
<span v-if="isCool(framework)">
, so cool!
</span>
</li>
</ul>
HTML JavaScript
Enlazando (binding) atributos
<ul>
<li class="framework-item"
:class="{cool: isCool(framework)}"
v-for="framework in frameworks"
@click="toggleCool(framework)">
{{framework}}<span v-if="isCool(framework)">, so cool!</span>
</li>
</ul>
Observando cambios (watches)
data: {
…
},
methods: {
…
},
watch: {
cool() {
console.log("sending data to server");
console.log(JSON.stringify({cool: this.cool}));
},
},
computed: {
…
}
Propiedades
Calculadas
var app = new Vue({
…
data: {
…
bkColor: 'red',
},
methods: {
…
changeColor() {
var colors = ['red', 'blue', … ];
var idx = Math.round(Math.random() * colors.length);
this.bkColor = colors[idx];
},
},
computed: {
howMany() {
console.log('recomputing howMany');
return this.cool.length;
}
}
});
…
<div
@click="changeColor"
:style="{'background-color': bkColor}">
There are {{ howMany}} cool frameworks
</div>
…
HTML JavaScript
Reactividad
Object.defineProperty()* Getters + Setters
Object.defineProperty(this, 'temperature', {
get: function() {
console.log('get!');
return temperature;
},
set: function(value) {
temperature = value;
archive.push({ val: temperature });
}
});
* Disponible en JavaScript desde ES5, http://caniuse.com/#feat=es5
Introducción a VueJS
Componentes
vue instances
Single-File components
// MyComponent.vue
<template>
<div></div>
</template>
<script>
export default {
data() {
return {};
},
};
</script>
<style lang="less">
</style>
js
css
webpack
(o browserify)
Comunicación entre Componentes
• de padres a hijos
• props
• slots
• de hijos a padres
• eventos
Comunicación entre Componentes
• entre componentes en general
• bus de eventos
• vuex
Vuex
Routing
Otras cosas
• axios
• filtros
• directivas
• mixins
• SSR
• typescript
• vue devtools
• time machine? claro!
Referencias
• https://jdonsan.gitbooks.io/desarrolla-aplicaciones-con-
vuejs/content/
• https://medium.com/unicorn-supplies/angular-vs-react-vs-vue-a-
2017-comparison-c5c52d620176
• https://carlosazaustre.es/vue-single-file-components/
• https://www.udemy.com/vuejs-2-the-complete-guide/
• https://vuejs.org/v2/guide/

Más contenido relacionado

PPTX
Modelo de proceso especializado
PDF
Mapa conceptual - Institutos Reguladores Calidad de Software
PDF
Transacciones y sql procedural EN MySQL
PPTX
4.1 Individual Y 4.3.pptx
PPTX
01. FUNDAMENTOS DE BASE DE DATOS.pptx
PDF
Instalación Wordpress y woocommerce con xampp y migración de base de datos de...
Modelo de proceso especializado
Mapa conceptual - Institutos Reguladores Calidad de Software
Transacciones y sql procedural EN MySQL
4.1 Individual Y 4.3.pptx
01. FUNDAMENTOS DE BASE DE DATOS.pptx
Instalación Wordpress y woocommerce con xampp y migración de base de datos de...

La actualidad más candente (20)

PPTX
Estandares de calidad aplicadas al software
PPTX
Interfaz con usuario
PPTX
diagrama de despliegue
PDF
7.modelado de los requerimientos escenarios y clases
DOCX
Cuadro comparativo sgbd
PDF
Presentación-nessus
PPTX
Proyecto final de software
PPTX
Diseño de Software
PDF
Las diez principales amenazas para las bases de datos
PPT
Unidad 3 Modelo De Negocio
PDF
Metodologia del rup
PDF
5. Métodos de Prueba de Software
PPTX
Lenguaje unificado de modelado
PPTX
Modelos de software ventajas y desventajas
PPTX
¿Qué SGBD (Sistema de Gestor de BD) y tecnologías utilizan: Facebook, Twitter...
PDF
Semana 1 trazabilidad y modelos de trazabilidad
PPTX
Sistemas operativos threads
Estandares de calidad aplicadas al software
Interfaz con usuario
diagrama de despliegue
7.modelado de los requerimientos escenarios y clases
Cuadro comparativo sgbd
Presentación-nessus
Proyecto final de software
Diseño de Software
Las diez principales amenazas para las bases de datos
Unidad 3 Modelo De Negocio
Metodologia del rup
5. Métodos de Prueba de Software
Lenguaje unificado de modelado
Modelos de software ventajas y desventajas
¿Qué SGBD (Sistema de Gestor de BD) y tecnologías utilizan: Facebook, Twitter...
Semana 1 trazabilidad y modelos de trazabilidad
Sistemas operativos threads
Publicidad

Similar a Introducción a VueJS (20)

PDF
WordPress y JavaScript
PPT
JQuery Mvc
PDF
Esencia de web components
PDF
Esencia de Web Components
PDF
Jsf Java Server Faces
PDF
Libro de programación Angular+TypeScripr
PDF
J M E R L I N P H P
PDF
Jquery para principianes
PPTX
[Code Camp 2009] Desarrollando sitios web escalables con ASP.NET MVC (Rodolfo...
PDF
Angular js
ODP
Curso basicoseguridadweb slideshare7
PDF
Guia jQuery INCES Militar - Kurt Gude
DOCX
Reportes En J Developer Parte 1 Y 2
PDF
10.desarrollowebconjava
KEY
Rails intro
PPTX
Presentacion node
PDF
Servicios web
PDF
Introducción a AngularJS
PDF
Progressive Web Apps - .NET Conf CO 2017
PPTX
Breve introducción práctica al DevOps - (es) 2021_03_18
WordPress y JavaScript
JQuery Mvc
Esencia de web components
Esencia de Web Components
Jsf Java Server Faces
Libro de programación Angular+TypeScripr
J M E R L I N P H P
Jquery para principianes
[Code Camp 2009] Desarrollando sitios web escalables con ASP.NET MVC (Rodolfo...
Angular js
Curso basicoseguridadweb slideshare7
Guia jQuery INCES Militar - Kurt Gude
Reportes En J Developer Parte 1 Y 2
10.desarrollowebconjava
Rails intro
Presentacion node
Servicios web
Introducción a AngularJS
Progressive Web Apps - .NET Conf CO 2017
Breve introducción práctica al DevOps - (es) 2021_03_18
Publicidad

Último (20)

PDF
Liceo departamental MICRO BIT (1) 2.pdfbbbnn
PPT
Que son las redes de computadores y sus partes
PPTX
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
PDF
MÓDULO DE CALOR DE GRADO DE MEDIO DE FORMACIÓN PROFESIONAL
PDF
Calidad desde el Docente y la mejora continua .pdf
PDF
SAP Transportation Management para LSP, TM140 Col18
PPTX
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
PDF
Diapositiva proyecto de vida, materia catedra
PDF
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
PDF
Maste clas de estructura metálica y arquitectura
PPTX
Presentación PASANTIAS AuditorioOO..pptx
DOCX
Zarate Quispe Alex aldayir aplicaciones de internet .docx
PPT
El-Gobierno-Electrónico-En-El-Estado-Bolivia
PPTX
RAP01 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
PDF
Influencia-del-uso-de-redes-sociales.pdf
PPT
introduccion a las_web en el 2025_mejoras.ppt
PPTX
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
PDF
Estrategia de apoyo tecnología miguel angel solis
PDF
clase auditoria informatica 2025.........
PDF
Plantilla para Diseño de Narrativas Transmedia.pdf
Liceo departamental MICRO BIT (1) 2.pdfbbbnn
Que son las redes de computadores y sus partes
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
MÓDULO DE CALOR DE GRADO DE MEDIO DE FORMACIÓN PROFESIONAL
Calidad desde el Docente y la mejora continua .pdf
SAP Transportation Management para LSP, TM140 Col18
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
Diapositiva proyecto de vida, materia catedra
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
Maste clas de estructura metálica y arquitectura
Presentación PASANTIAS AuditorioOO..pptx
Zarate Quispe Alex aldayir aplicaciones de internet .docx
El-Gobierno-Electrónico-En-El-Estado-Bolivia
RAP01 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
Influencia-del-uso-de-redes-sociales.pdf
introduccion a las_web en el 2025_mejoras.ppt
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
Estrategia de apoyo tecnología miguel angel solis
clase auditoria informatica 2025.........
Plantilla para Diseño de Narrativas Transmedia.pdf

Introducción a VueJS

Notas del editor

  • #7: Declarative Rendering: vue compila las templates en una funcion render… (como React, pero automáticamente) Conditionals and Loops Events Bindings
  • #8: v-if también hay v-show
  • #9: como el ng-click funciona con todos los eventos: @hover @load ver las herramientas de desarrollo
  • #13: ¿cómo funciona? la diferencia con Angular.js la diferencia con React Angular.JS Tabla de bindings - ciclo de $digest… se repite hasta que no cambia nada REACT Virtual DOM, re-renderizar toda la aplicación siempre, diff con el DOM real y hacer los mínimos cambios ‘shouldComponentUpdate’ para optimizar
  • #17: $ npm install -g vue-cli $ vue init webpack-simple my-project $ cd my-project $ npm install $ npm run dev
  • #21: la vista principal tiene un <router-view></router-view> el router selecciona un componente para renderizar en ese punto a partir de la URL y mucho más: rutas anidadas, parámetros, guardas…