Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

338
Vistas
Vue3 no activará el reloj cuando use v-model:prop="data"

Estoy creando un componente secundario para mis filtros que debe actualizarse cuando el usuario cambia algunos valores de entrada... El problema es que cuando emito los nuevos datos en el componente principal, ¡el reloj no se activará! Por favor, revise mi código para ver dónde me equivoqué...

Componente principal

Definición del componente
 <FiltersComponent v-model:filters="filters" />
Definición de la expresión del reloj
 watch(filters, (value) => { getAccounts(value); });

Componente hijo

 const emits = defineEmits(['update:filters']); const props = defineProps({ filters: { type: Object, default: () => ({ ... }), required: true, }, }); function updateFilters(newValue, property) { console.log('updateFilters', newValue, property); emits('update:filters', { ...props.filters, [property]: newValue }); }

nota: el archivo console.log imprime el valor nuevo y la propiedad correctamente, ¡pero el reloj nunca sucede!

PD: También utilicé v-on:update:filters="getAccounts(filters)" dentro del componente principal. pero los datos de los filtros no se actualizan dentro de la llamada a la función...

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Debe establecer profundo en verdadero al observar una matriz u objeto para que Vue sepa que debe observar los datos anidados en busca de cambios. Intenta usar esto:

 watch(filters, (value) => { getAccounts(value); }, { deep: true } );

Para referencia, revise la documentación de vue 3: https://v3.vuejs.org/guide/migration/watch.html#_3-x-syntax

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda