Estoy trabajando con BootstrapVue .
Tengo un json que está estructurado así (llamado json en la pregunta completa)
[ {"ID": "1", "Name": "Harry", "Age": "18"}, {"ID": "2", "Name": "Ron", "Age": "18"}, {"ID": "3", "Name": "Hermione", "Age": "18"}, {"ID": "4", "Name": "Ginny", "Age": "18"}, {"ID": "5", "Name": "Fred", "Age": "18"}, ] En mi plantilla, lo muestro como sigue en mi <b-form-select> :
<b-form-select class="showPointer"> <option v-for="item in json" :key="item.id"> ID: {{ item.id}}, Name: {{ item.name}}, Age: {{ item.age}} </option> </b-form-select> Ahora mi problema : quiero sort según mi name y sé que primero tengo que ponerlo en una computed-function pero no sé cómo ...
Pero quiero mostrarlo en mi template como en mi ejemplo anterior (ID, que Nombre, que Edad).
¡Gracias por tu ayuda! ¡Gracias!
No necesita computado para esto.
Puede ordenarlo inmediatamente después de recibir la respuesta de la solicitud.
Ejemplo
get(....).then(response=> { this.json = response.sort((a,b) => a.name - b.name) })Abregre tiene razón, no necesitas computar para esto.
Pero en cualquier caso, puedes usar computado así:
<option v-for="item in sortedJson" :key="item.id"> computed: { sortedJson () { return this.json.sort((a, b) => a.Name - b.Name) } }