Чем customRef отличается от watch debounce и когда что выбрать во Vue.js?
Что хотят услышать интервьюеры:
Сравнение: customRef нельзя оценивать в вакууме; обычно его сравнивают с watch debounce. Выбор зависит от размера компонента, источника состояния, lifecycle, требований к SSR, тестируемости и командных соглашений.
Ответ:
Когда выбирать customRef: когда его свойства напрямую решают задачу.
Плохой ответ: «так принято» без объяснения trade-off.
const debounced = customRef((track, trigger) => ({
get(){
track();
return value
}
, set(v){
value=v;
trigger()
}
}
))