Vue · Middle · Запитання 57 з 75

Як створити ref, що оновлюється з дебаунсом?

function useDebouncedRef(value, delay = 300) {
  let timer
  return customRef((track, trigger) => ({
    get() { track(); return value },
    set(v) { clearTimeout(timer); timer = setTimeout(() => { value = v; trigger() }, delay) },
  }))
}

Пояснення

customRef дає явний контроль над відстеженням. Його можна використовувати з v-model, як звичайний ref.

Де почитати

Помилка в запитанні

Vue · Middle · запитання 57

Перевірте себе

Пройдіть тест Vue · Middle: запитання й варіанти перемішуються, а наприкінці - розбір помилок.

Пройти цей тест