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

223
Vistas
Cómo agregar/eliminar dinámicamente campos de ranura, en función de una matriz en Vue JS

Tengo lo siguiente, que ocupa una ranura que contiene los campos HTML que se repetirán:

 <div v-for="(row, index) in rows" :key="index"> <div class="d-flex justify-content-between "> <slot name="fields"> </slot> <input v-model="row.value" /> <button @click="removeRow(index)" type="button" class="btn btn-primary waves-effect waves-float waves-light height-10-per " > Remove <i class="fa fa-times-circle"></i> </button> </div> </div>

Cuando uso removeRow(index) , siempre elimina la última ranura. He probado usando el <input v-model="row.value"> y la entrada correcta se elimina aquí, pero nunca la ranura correcta.

No necesito que las entradas en la ranura sean dinámicas o interactúen con Vue, simplemente quiero permitir que el usuario agregue nuevas filas o elimine filas dinámicamente a través de un componente de Vue.

Consulte los siguientes dos métodos que he usado para agregar/eliminar filas, en caso de que haya un problema aquí:

 removeRow(index){ this.rows.splice(index, 1); }, addRow(){ this.rows.push({value: 'test'}) }

Cualquier ayuda sería realmente apreciada.

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

0

Agregue un valor de key único a su elemento de bucle v-for :

 <div-for="(row, index) in rows" :key="JSON.stringify(row)">

Esto debería asegurar que el elemento correcto se elimine del DOM.

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