Как отменить функцию фильтра v-autocomplete в Vuetify? - PullRequest
0 голосов
/ 20 января 2020

У меня v-autocomplete с 9000 элементами.

Код компонента выглядит следующим образом:

<v-autocomplete
  v-model="form.fields.city_id"
  :items="cities_subregions"
  item-text="name"
  item-value="id"
  :filter="locationsFilter"
></v-autocomplete>

В функции locationFilter у меня есть следующее:

locationsFilter (item, queryText, itemText) {
    const textOne = item.city_name.normalize('NFD').replace(/[\u0300-\u036f]/g, "").toLowerCase();
    const searchText = queryText.normalize('NFD').replace(/[\u0300-\u036f]/g, "").toLowerCase();
    return textOne.startsWith(searchText) || searchText.length > 2  && textOne.indexOf(searchText) > -1 && textOne.length/(3*textOne.split(' ').length) < searchText.length;
},

Даже если для этой функции установить return null, когда пользователь введет ее, она будет запаздывать.

Поэтому я бы хотел, чтобы фильтр locationsFilter вызывался один раз каждые ~ 250 мс.

Есть ли способ достичь этого?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...