Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

709
Views
¿Cuál es la forma correcta de usar v-select, item-text y item-value?

Esta es la respuesta de la API que llamo

ingrese la descripción de la imagen aquí desde otra vista.

ingrese la descripción de la imagen aquí

Estoy almacenando el resultado de la API, digamos en result = []; .

Estoy creando una lista desplegable usando v-select con :items="result" .

¿Cómo debo escribir para item-text y item-value si quiero que services.name sea el texto que se muestra en la lista desplegable y services._id se almacenará en una variable usando v-model , services._id como item-value ?

Parece que no puedo descifrar estas propiedades anidadas.

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Algo que puede hacer es recuperar todos los servicios de todos los subconjuntos a través de una propiedad computed .

¡Entonces solo tendrá una matriz de objetos (en lugar de una matriz de matrices a través de los servicios de propiedad) y puede especificar las propiedades item-text y item-value !

Aquí hay un ejemplo

 new Vue({ el: "#app", vuetify: new Vuetify(), data: () => { return { currentItem: null, items: [{ services: [ {_id: 1,name: 'foo'}, {_id: 2, name: 'bar'} ] }, { services: [ {_id: 1,name: 'foo'}, {_id: 3, name: 'baz'} ] } ] } }, computed: { allServices(){ return this.items.reduce((acc, curr) => { curr.services.forEach(service => { if(!acc.find(x => x._id === service._id)) acc.push(service) }) return acc }, []) } } })
 <script src="https://unpkg.com/vue@2.x/dist/vue.js"></script> <script src="https://unpkg.com/vuetify@2.6.4/dist/vuetify.min.js"></script> <link rel="stylesheet" href="https://unpkg.com/vuetify@2.6.4/dist/vuetify.min.css" /> <div id="app" data-app> currentItem : {{currentItem}} <v-select v-model="currentItem" :items="allServices" item-text="name" item-value="_id"></v-select> </div>

about 4 years ago · Juan Pablo Isaza Report

0

Puede utilizar las slots del v-select para personalizar los datos mostrados:

 <v-select label="Services" v-model="customVar" :items="result" item-value="_id" item-text="name" return-object > <template v-slot:selection="data"> {{ data.item.name }} </template> <template v-slot:item="data"> {{ data.item.name }} </template> </v-select>

También podría usar como se muestra arriba return-object :

Cambia el comportamiento de selección para devolver el objeto directamente en lugar del valor especificado con item-value

Para que pueda elegir qué variables usa del objeto seleccionado

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!