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

238
Vistas
v-para usar la estructura de datos del mapa y el modelo v

Sé que es posible usar Map con v-for, pero digamos, ¿es posible usar los valores [clave, valor] como v-model?

Ex:

 <input v-for="[key, value] in map" :key="key" v-model="key"></input> ... ... ... data(){ return { map: new Map([['cool thing 1', 'cool thing 2'], ...]) } }

¿Vue3 admite esto de forma nativa?

Si no, ¿qué se podría hacer?

Para ser más precisos, quiero usar la clave y el valor como modelo v en las entradas.

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

0

Creo que Vue tiene solo dos limitaciones sobre lo que se puede usar con v-model

  1. la expresión debe ser válida en el "lado izquierdo" para la asignación (porque v-model="xxx" es lo mismo que :value="xxx" @input="xxx = $event" )

  2. Ambos pares (key, value) al iterar objetos y (value, index) al iterar matrices son variables temporales locales del ciclo, por lo que no tiene ningún sentido utilizarlas en el v-model . Si lo intenta, recibirá una advertencia: You are binding v-model directly to a v-for iteration alias. This will not be able to modify the v-for source array because writing to the alias is like modifying a function local variable.

Por lo tanto, debe dar un paso atrás y usar el objeto/matriz original con v-model

Matrices: v-model="arr[index]"

Objetos/Mapas: v-model="map[key]"

Actualizar

Mi idea es básicamente que el usuario puede ingresar tanto la clave como el valor de un mapa

Esa es una mala idea por varias razones. Primero, como se dijo antes, la variable key es una variable temporal local en el bucle, por lo que no es posible usarla en v-model . En segundo lugar (nuevamente, como se dijo antes), lo que sea que coloque dentro v-model debe ser "asignable". El objeto del Map no es asignable : debe usar un método set para establecer un valor de clave particular. Entonces v-model no es una opción aquí (debe usar eventos en su lugar). Además de eso, Map no permite claves duplicadas, por lo que permitir que los usuarios editen libremente las claves es la receta para una UX muy extraña...

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