#vue.js #vuetify.js #next #v-autocomplete
#vue.js #vuetify.js #Далее #v-автозаполнение
Вопрос:
У меня есть массив объектов, привязанных к элементу prop v-autocomplete. это мои данные:
products: [
{
text: "Apple",
value: 209
},
{
text: "Banana",
value: 229
}
]
<v-autocomplete>
...
:item="products"
:search-input.sync="search"
</v-autocomplete>
итак, я хочу иметь возможность поиска как по «тексту», так и по «значению». В настоящее время я могу искать только один из них.
Ответ №1:
Используйте пользовательскую функцию фильтра для v-автозаполнения следующим образом
<v-autocomplete>
...
:filter="customFilter"
:item="products"
:search-input.sync="search"
</v-autocomplete>
methods: {
customFilter (item, queryText, itemText) {
// return true or false according to your logic
// i.e queryText matches with item object
},
},
Ответ №2:
Да, вы можете выполнить поиск по нескольким атрибутам, используя атрибут фильтра, который указан в документах:
customSearch(item, queryText, itemText) {
const data = item.text.toLowerCase() item.value.toLowerCase()
const searchText = queryText.toLowerCase()
return textOne.indexOf(searchText) > -1
}
и использовать в шаблоне следующим образом:
<v-autocomplete
spellcheck="false"
:filter="customSearch"
...
</v-autocomplete>
Обратитесь к этим документам: https://vuetifyjs.com/en/api/v-autocomplete/#props