У меня есть массив объектов: productos[]
, я использую это для заполнения v-datatable
.
Я пытался добавить поиск texfield
, такой как Vuetify
документация говорит.Я добавил это, но это работает (по какой-то причине) только с заголовками, которые имеют номера, и это не работает, например, когда вы вводите строку.
Я думаю, что я делаю что-то не так.
Текстовое поле поиска:
<v-text-field
v-model="search"
append-icon="search"
label="Search"
single-line
hide-details
></v-text-field>
v-datatable
<v-data-table
:headers="headers"
:items="productos"
:search="search"
hide-actions
class="elevation-1"
>
<template slot="items" slot-scope="props">
<td class="text-xs-left">{{ props.item.ListadoProductoId }}</td>
<td class="text-xs-left">{{ props.item.ListadoProducto.nombre }}</td>
<td class="text-xs-left"> ${{ props.item.ListadoProducto.precio }}</td>
<td class="text-xs-left">{{ props.item.disponible }}</td>
<td class="text-xs-left">{{ props.item.ListadoProducto.lim_falt }}</td>
<td class="text-xs-left">{{ props.item.ListadoProducto.lim_exc }}</td>
</v-data-table>
Заголовки и некоторые другие сценарии:
export default {
data () {
return {
error: null,
search: '',
headers: [
{text: 'ID_PROD', value: 'ListadoProductoId', sortable: false},
{text: 'Nombre', value: 'nombre'},
{text: 'Precio', value: 'precio'},
{text: 'Disponible (u)', value: 'disponible'},
{text: 'Limite faltantes', value: 'lim_falt'},
{text: 'Limite excedentes', value: 'lim_exc'}
]
}
}
}
Пример массива Productos:
productos: [
{
ListadoProducto: {
id: 5,
lim_exc: 5000,
lim_falt: 200,
nombre: "Algo",
precio: 300
},
ListadoProductoId: 5,
disponible: 100,
id: 5
},
{
ListadoProducto: {
id: 6,
lim_exc: 1000,
lim_falt: 200,
nombre: "Bgo",
precio: 450
},
ListadoProductoId: 6,
disponible: 0,
id: 6
}
]
Картинки: Без поиска
Поиск по номеру (соответствует первому заголовку)
Поиск по строке (не удается получить совпадение со вторым заголовком, т. Е.)