- 1

Creación de gráficos dinámicos con Vue.js
09:59 - 2

Creación de un Proyecto Vue desde Cero
07:28 - 3

Componentes de Archivo Único en Vue: Creación y Uso Básico
06:15 - 4
Fundamentos de Vue.js: Montaje y Virtual DOM
02:05 - 5

Estilos en Vue: Scoped, Clases Dinámicas y Uso de Sass
08:22 - 6

Agregar estilos globales y scripts en aplicaciones Vue.js
04:39 - 7

Sintaxis y Reactividad en Vue: JavaScript y HTML Integrados
07:44 - 8

Props y Comunicación entre Componentes en VueJS
07:06 - 9

Validación de Props en Vue: Tipos, Requeridos y Valores por Defecto
09:09 - 10
Vue 3: Uso y Ventajas de la Composition API
02:17 quiz de Conceptos básicos de Vue
Uso de Watchers en Vue para Controlar Estados Reactivos
Clase 13 de 34 • Curso de Vue.js
Contenido del curso
- 11

Reactividad en Vue.js: Estados y Actualización del DOM
08:11 - 12
Reactividad con `ref` en Vue 3: Creación y Uso Práctico
02:11 - 13

Uso de Watchers en Vue para Controlar Estados Reactivos
10:49 - 14

Uso de Computed Properties en Vue para Mejorar el Rendimiento
05:24 - 15

Renderizado condicional en Vue: diferencias entre v-if y v-show
05:57 - 16
Ciclos de Vida de Componentes en Vue 3: Guía Completa
01:59 quiz de Reactividad en Vue
- 17

Pensamiento en componentes con Vue para desarrollo web eficaz
03:06 - 18

Consumo de APIs y Objetos Reactivos en Vue.js
10:31 - 19
Diferencias entre reactive y ref en Vue 3
01:49 - 20

Renderizado de Componentes en Vue con v-for y Keys Únicas
05:05 - 21

Uso de Slots y Named Slots en Vue para Composición de Componentes
09:24 - 22

Herencia de Atributos en Componentes Vue: Uso y Ejemplos Prácticos
06:57 quiz de Composición en Vue
- 26

Componentes Dinámicos en Vue: Uso y Ciclo de Vida
05:38 - 27

Implementación de Modales y Manejo de Estado Global en Vue.js
13:33 - 28

Uso de Teleport en Vue para Optimizar el Renderizado de Modales
04:31 - 29

Uso de Composables en Vue para Reutilización de Lógica
09:44 - 30

Uso de Refs en Vue para Controlar Elementos HTML
06:07 - 31
Virtual DOM en Vue: Funcionamiento y Beneficios
02:54 quiz de Optimización en Vue
¿Qué son los Watchers en Vue y cómo utilizarlos?
Los Watchers en Vue son una poderosa herramienta que permite a los desarrolladores observar y reaccionar ante cambios en el estado de una aplicación. Son muy útiles cuando se quiere ejecutar una acción cada vez que una propiedad reactiva cambie de valor. En esta clase aprenderemos a utilizar los Watchers para monitorear el estado de nuestro componente 'game counter' y disparar efectos visuales con la librería JS confetti cuando el usuario acierte un número.
¿Cómo preparar el entorno para trabajar con Watchers?
La preparación del entorno es fundamental antes de empezar a usar Watchers. Primero, asegúrate de estar en la rama de trabajo apropiada, en este caso, la rama vue-watcher-start, que contiene pequeños ajustes en la lógica del contador. Estos ajustes incluyen:
- Un generador de números aleatorios para la inicialización del contador.
- Lógica que evita que el contador supere el valor máximo o se torne negativo.
Para esto, utiliza el comando en terminal:
git checkout vue-watcher-start
¿Cuál es el objetivo del juego con el contador?
El juego consiste en presionar botones para incrementar o decrementar un contador hasta acertar un número generado aleatoriamente, el cual se debe adivinar. Cuando el usuario acierta, el objetivo es lanzar confetti como señal de triunfo.
¿Cómo implementar JS confetti en el juego?
Para empezar, debemos instalar la librería JS confetti. Primero, carga la dependencia con:
npm install js-confetti
Lo que buscamos es que al acertar el número, se dispare el confetti. En lugar de poner lógica de verificación dentro de las funciones de incremento o decremento, utilizaremos un Watcher para monitorear el estado del contador:
¿Cómo utilizar WatchEffect para monitorear cambios?
El WatchEffect permite ejecutar un efecto cada vez que un estado reacivo cambie dentro del cuerpo de la función:
watchEffect(() => {
console.log(`El contador ha cambiado a: ${counter.value}`);
});
¿Por qué elegir 'watch' en lugar de 'watchEffect'?
Aunque WatchEffect es útil, suele ser más controlado usar watch, dado que permite especificar exactamente qué propiedades reactivas queremos monitorear, evitando ejecuciones innecesarias en múltiples cambios de estados:
watch(counter, (newValue) => {
console.log(`El contador ha cambiado a: ${newValue}`);
if (newValue === numberToGuess) {
jsConfettiInstance.addConfetti();
}
});
Este método mejora la eficiencia y performance al limitar las propiedades observadas.
¿Cómo limitar los efectos múltiples de confetti?
Para evitar que el confetti se dispare múltiples veces, introduce un estado adicional que marque si el usuario ya ha ganado:
const win = ref(false);
watch(counter, (newValue) => {
if (newValue === numberToGuess && !win.value) {
jsConfettiInstance.addConfetti();
win.value = true;
}
});
Este estado se actualizará a true cuando se acierte, desactivando los botones para evitar nuevas modificaciones.
¿Qué consejos se deben seguir al usar Watchers?
- Usa
watchsobrewatchEffectpara un control más preciso. - Limita la cantidad de propiedades observadas para evitar problemas de rendimiento.
- Implementa lógica con precaución para no causar múltiples renderizados innecesarios.
Los Watchers son una funcionalidad clave de Vue cuando se desea realizar acciones específicas ante cambios de estado, pero su uso indebido puede afectar la performance de la aplicación. Siempre es recomendable aplicar prácticas óptimas para un desarrollo fluido y eficiente.