Qué son los watchers de Vue
Clase 16 de 53 • Curso Profesional de Vue.js 2
Contenido del curso
CLI y Dev Tools
- 3

Instalación de Vue.js: Node, Dev Tools y CLI
06:13 min - 4

Crear una aplicación Vue con CLI y webpack
12:49 min - 5

Cómo funciona webpack.config.js
10:38 min - 6

Babel: transpilador de JavaScript moderno
05:06 min - 7

ESLint con Standard JS: linteo automático en webpack
15:34 min - 8

Configuración de Sass y Bulma en Vue
06:18 min - 9

Cómo configurar Pug en Vue con webpack
04:23 min - 10
Diseño de Mockups: Práctica y Colaboración en Comunidad
00:20 min - 11
Creación de Vistas con Mockups y Vue.js
00:32 min
Manipulación del DOM
- 12

Expresiones en Vue: sintaxis doble llave
03:49 min - 13

Diferencia entre v-show y v-if en el DOM
06:22 min - 14

Qué es data binding en Vue.js
04:11 min - 15

Computed properties en Vue.js: cómo crearlas
04:13 min - 16

Qué son los watchers de Vue
Viendo ahora - 17

Eventos Vue: directiva v-on y métodos format
06:12 min - 18

Cómo construir una interfaz de búsqueda completa en Vue
19:03 min - 19
Manipulación del DOM con Vue.js: Práctica y Ejercicios
03:00 min
REST y HTTP
Sistema de Componentes
- 23

Cómo crear componentes en Vue
08:46 min - 24

Componentes Layout en Vue con Bulma
09:50 min - 25

Reactividad en Vue: $set y Object.assign
06:14 min - 26

Hooks del ciclo de vida en Vue.js
05:38 min - 27

Comunicación padre-hijo con props en Vue
23:27 min - 28

Eventos en Vue: comunicar hijo a padre
12:04 min - 29

Slots: HTML dinámico en componentes Vue
13:42 min - 30

Plugin Event Bus: comunicar componentes sin relación en Vue
19:19 min
Vue Router
Extendiendo VueJS
Clases, Animaciones y Transiciones36
Vuex
- 39

Cómo Vuex centraliza estados en Vue
03:41 min - 40

Instalación de Vuex con estado único
17:32 min - 41

Cómo usar mutations y commit en Vuex
08:16 min - 42

Getters de Vuex: mapGetters y store sincronizado
07:35 min - 43

Cómo dispatch ejecuta actions asincrónicas en ViewX
07:54 min - 44

Instalación de Viewex en Platzi Music
26:37 min
Nuxt.js
Deploy a Producción con Now
Conclusiones
Bonus
Domina los watchers para reaccionar a cambios en tu view model. Aprende qué son, cómo declararlos y cuándo usarlos para desencadenar código sin agregar complejidad. Aquí verás su diferencia con las computed properties, cómo acceder al valor nuevo y viejo, y un caso típico: llamadas HTTP desde un input de búsqueda.
Watchers y computed: qué cambia y cuándo usarlos
Los watchers son similares a las computed properties, pero cumplen otro rol: reaccionan a cambios. No devuelven valor, no son propiedades y no pueden usarse en expresiones. En cambio, ejecutan funciones cuando una variable del view model cambia.
¿Qué diferencia a un watcher de una computed property?
- Un watcher no devuelve un valor.
- No es una propiedad; es una función que reacciona a cambios.
- No se usa en expresiones del template.
- Se dispara cuando cambia una variable del view model.
- Facilita un patrón observable para ejecutar lógica al modificar datos.
¿Cómo se enlaza un watcher correctamente?
- Se define dentro de un objeto watch.
- Debe llamarse igual que la variable del view model que observa.
- Cada propiedad en
watches una función del mismo nombre que la variable.
Declaración y enlace: cómo crear un watcher
Para empezar, se crea un objeto watch como con computed. Si observas una variable name, el watcher debe llamarse name. Dentro, la función recibe dos argumentos: nuevo valor y valor anterior; así puedes comparar y actuar.
¿Cómo declarar el objeto watch y sus funciones?
export default {
data() {
return { name: '' };
},
watch: {
name(newVal, oldVal) {
console.log('nuevo:', newVal);
console.log('anterior:', oldVal);
}
}
};
¿Qué parámetros recibe un watcher?
newVal: el valor nuevo tras el cambio.oldVal: el valor anterior antes del cambio.- Puedes imprimirlos en la console para verificar el flujo.
- Útil al probar mientras compila webpack y observas resultados.
Casos prácticos: llamadas HTTP y entradas de usuario
Un uso común es reaccionar a cambios en un input y lanzar una llamada HTTP. Por ejemplo, en un campo de búsqueda, cada tecla puede disparar una función para refrescar resultados en tiempo real.
¿Cómo usar watchers para búsquedas en tiempo real?
- Observar la variable enlazada al input de búsqueda.
- En cada cambio, desencadenar una llamada HTTP.
- Actualizar resultados con el valor nuevo.
- Mantener registro del valor anterior si necesitas comparar.
¿Qué sigue con eventos del usuario?
- Próximo paso: aprender eventos y cómo enlazarlos para ejecutar acciones.
- Combinar watchers y eventos potencia la interacción del usuario.
¿Tienes dudas sobre cómo estructurar tus watchers o qué observar en tu view model? Cuéntame en los comentarios y vemos tu caso concreto.