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

159
Vistas
Bucle infinito al intentar ordenar la matriz en v-for

Estoy tratando de ordenar una matriz en un v-for (también traté de alinearlo). El problema es que el método de clasificación se llama demasiadas veces y parece infinito.

 <div v-for="asset in sortBinaries(props.row.assets)" :key="asset.url"> </div>
 sortBinaries(binaries) { return binaries.sort((a, b) => this.fieldSorter(a, b, ['arch', 'type'])); }, fieldSorter(a, b, fields) { var dir = [], i, l = fields.length; fields = fields.map(function(o, i) { if (o[0] === "-") { dir[i] = -1; o = o.substring(1); } else { dir[i] = 1; } return o; }); for (i = 0; i < l; i++) { var o = fields[i]; if (a[o] > b[o]) return dir[i]; if (a[o] < b[o]) return -(dir[i]); } return 0; }

El v-for está ubicado en una ranura de detalle de una mesa Buefy. Entonces necesito la referencia al objeto props.row .

¿Hay alguna forma de ordenar la matriz cuando se muestra, en lugar de tratar primero todos los datos?

La matriz que estoy clasificando es pequeña (6 entradas como máximo), pero todo el conjunto puede agrandarse.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

use calculado en lugar de ordenar en línea

Para bucles infinitos, si usa la ordenación en línea, cada vez que se renderice esta plantilla, se invocará la función de ordenación en línea.

Usar computated para ordenar sus datos es una buena idea. Su plantilla se volverá a representar justo después de que se haya cambiado el cálculo.

 <div v-for="asset in sortedBinaries" :key="asset.url">
 computed: { sortedBinaries() { return this.row.assets.sort((a, b) => this.fieldSorter(a, b, ['arch', 'type'])); } }
over 4 years ago · Santiago Trujillo 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