Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

122
Visualizações
La columna ordenable de la tabla Vuetify no funciona

ingrese la descripción de la imagen aquí

Tengo estas tablas de vuetify, así configuro la cabecera

 headers: [ { text: 'Name', align: 'start', sortable: false, value: 'name', width: '20%' }, { text: 'Link Count', value: 'count', width: '10%', sortable: true }, { text: 'URL', value: 'details', width: '50%' }, { text: 'Actions', value: 'id', width: '20%' } ]

 <v-data-table :headers="headers" :items="items" :search="search"> ... <template v-slot:item.count="{ item }"> {{ item.details.length }} </template> ...

Como puede ver, tengo sortable: true para la columna Link Count .

De alguna manera no funciona...

¿Cómo puedo depurar esto más?

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Configuró su columna 'Recuento de enlaces' para count el campo y usar la ranura item.count en el componente, pero el clasificador de tablas interno no tiene idea de qué es este campo de count .

Si está seguro de que su columna de details nunca tendrá valores específicos como nulo , indefinido , etc., puede cambiar su código de esta manera:

 ... { text: 'Link Count', value: 'details.length', width: '10%', sortable: true}, ... <template v-slot:item.details.length="{ item }"> {{ item.details.length }} </template> ...

(O ni siquiera necesita anular esta ranura)

De lo contrario, si le importa nulo/indefinido, sería mejor crear una propiedad calculada con sus datos actuales más una columna de count calculada adicional, y usarla en lugar de items en el componente. De esta manera, por ejemplo:

 <v-data-table :headers="headers" :items="computedDesserts" :items-per-page="5" ></v-data-table> ... data () { return { headers: [ { text: 'Dessert (100g serving)', value: 'name'}, { text: 'Dessert Count', value: 'count' }, ... ], desserts: [ { name: 'Frozen Yogurt', calories: 159, ... }, ... ], } }, computed: { computedDesserts() { return this.desserts.map(item => { return { ...item, count: this.isValidString(item.name) ? item.name.length : 0 } }); } }, methods: { isValidString(val) { return typeof val === 'string'; //Or you can use your own condition } }

La demostración de CodePen con accesorios computarizados está disponible aquí .

about 4 years ago · Juan Pablo Isaza Relatório

0

De forma predeterminada, <v-data-table> viene con una funcionalidad ordenable para todas las columnas. Por su pregunta, ¿qué entendí si, de forma predeterminada, desea que la columna de count se ordene en orden ascendente/descendente cuando se carga la cuadrícula?

En caso afirmativo, puede lograrlo utilizando la función de clasificación externa de la cuadrícula de datos.

demostración de trabajo :

 new Vue({ el: '#app', vuetify: new Vuetify(), data () { return { sortBy: 'count', sortDesc: false, headers: [ { text: 'Name', align: 'start', value: 'name', width: '20%' }, { text: 'Link Count', value: 'count', width: '10%' }, { text: 'URL', value: 'details', width: '50%' }, { text: 'Actions', value: 'id', width: '20%' } ], items: [ { name: 'Frozen Yogurt', count: 159, details: 'Detail 1', id: 24 }, { name: 'Ice cream sandwich', count: 237, details: 'Detail 2', id: 37 }, { name: 'Eclair', count: 262, details: 'Detail 3', id: 23 }, { name: 'Cupcake', count: 305, details: 'Detail 4', id: 67 } ], } } })
 <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"/> <link rel="stylesheet" href="https://unpkg.com/@mdi/font@6.x/css/materialdesignicons.min.css"/> <div id="app"> <v-app id="inspire"> <div> <v-data-table :headers="headers" :items="items" :sort-by.sync="sortBy" :sort-desc.sync="sortDesc" class="elevation-1" ></v-data-table> </div> </div> </v-app> </div>

Avíseme si mi comprensión no es correcta o si se requieren cambios adicionales según el requisito.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda