- 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
Reactividad con `ref` en Vue 3: Creación y Uso Práctico
Clase 12 de 34 • Curso de Vue.js
¿Cómo funciona ref en Vue 3?
En Vue 3, uno de los conceptos fundamentales para trabajar con la reactividad es el uso de ref. Si alguna vez has escuchado la frase "reactividad en Vue" y te has preguntado de qué se trata, estás de suerte pues vamos a desmenuzar este tema de manera clara.
¿Qué es ref?
ref es una función proporcionada por Vue que nos permite crear variables reactivas. Estas variables son como "contenedores mágicos" que actualizan automáticamente las vistas (el HTML) cada vez que cambian.
Es decir, con ref puedes vincular datos y la interfaz de usuario de forma sencilla y eficiente.
Imagina que tienes una caja (tu aplicación) y que dentro de esta caja tienes un sensor que detecta cambios. Cada vez que algo en la caja se mueve o cambia, el sensor envía una señal y actualiza el exterior de la caja (la interfaz). Eso es exactamente lo que hace ref.
Cómo funciona ref
Cuando utilizas ref, estás creando un objeto reactivo que envuelve un valor. Este objeto tiene una propiedad llamada value, que es donde realmente se almacena el valor. Para modificar o acceder a este valor, necesitas usar esta propiedad.
Por ejemplo:
<script setup> import { ref } from 'vue'; const count = ref(0) const increment = () => { count.value++; } </script>
En este ejemplo:
- Declaramos
countcomo un valor reactivo conref(0). Esto significa quecountempieza en 0. - Usamos
count.valuepara acceder o modificar su valor. - Cada vez que cambiamos
count.value, Vue detecta el cambio y actualiza automáticamente la vista donde se utiliza.
En tu plantilla (HTML), puedes mostrar el valor con:
<template> <div> <p>El contador está en: {{ count }}</p> <button @click="increment">Incrementar</button> </div> </template>
¿Por qué usar .value?
Esto es necesario porque ref crea un "envoltorio" alrededor del valor. Este envoltorio permite a Vue rastrear los cambios en el valor, pero significa que siempre debes acceder a él mediante la propiedad value en JavaScript. Sin embargo, en las plantillas, no necesitas usar .value, ya que Vue lo maneja automáticamente.
⚠️ Nota importante: Si olvidas usar
.valueen tu código JavaScript, no verás los cambios reflejados y probablemente te confundas. Así que ¡no lo olvides!
¿Qué tipos de valores puede manejar ref?
ref es extremadamente flexible. Puedes usarlo con:
-
Valores primitivos: como números, cadenas, booleanos, etc.
const message = ref('Hola, Vue 3!'); message.value = 'Reactividad es asombrosa!'; -
Objetos: Aunque aquí es más común usar
reactive(lo veremos en otra lección), puedes usarrefsi necesitas una reactividad más específica.const user = ref({ name: 'Enrique', age: 25 }); user.value.name = 'María'; -
Arrays: Puedes manipularlos como harías normalmente.
const items = ref([1, 2, 3]); items.value.push(4); // [1, 2, 3, 4]
ref es una herramienta fundamental y esencial para cualquier desarrollador que trabaje con Vue 3.
Entender cómo funciona y cuándo usarlo te ayudará a construir aplicaciones reactivas de manera eficiente.
Recuerda:
- Usa
refpara valores individuales o cuando necesites una reactividad controlada. - Siempre accede o modifica el valor con
.valueen JavaScript. - Practica con ejemplos sencillos y experimenta para dominar este concepto.