Що робить модифікатор .lazy?
Модифікатор .lazy змінює стандартну поведінку v-model, перемикаючи оновлення значення з події input на подію change.
Простіше кажучи:
.lazyзмушуєv-modelоновлювати змінну лише тоді, коли користувач закінчив введення і поле втратило фокус (або натиснув Enter), а не на кожен символ.
Як працює v-model без .lazy
За замовчуванням:
<input v-model="text">Оновлює text щоразу, коли користувач вводить новий символ (подія input).
Як працює v-model.lazy
<input v-model.lazy="text">Оновлення значення відбудеться лише при події change:
- після втрати фокусу
- або при натисканні Enter
- або при виборі значення в select
Приклад
<input v-model.lazy="search">
<p>{{ search }}</p>Якщо користувач вводить:
h → he → hel → hell → hello
То search змінюється лише один раз, коли користувач закінчить введення і піде з поля.
Коли корисно використовувати .lazy?
1. Щоб не оновлювати модель на кожному символі
Наприклад, поле пошуку, яке викликає запит до API:
<input v-model.lazy="query">2. Для форм, де проміжні значення не важливі
Наприклад:
- введення дати
- введення складного числового формату
- введення значення через маску
3. Для покращення продуктивності
Якщо обробка даних важка, .lazy знижує кількість зайвих оновлень.
4. Щоб уникнути "брудних значень"
Наприклад, якщо валідувати поле лише після введення.
Підсумок (ідеально для співбесіди)
.lazy- це модифікаторv-model, який змушує оновлювати змінну лише за подієюchange, а не при кожному введенні символу. Корисний для оптимізації введення, пошуку, форм і випадків, де проміжні значення не потрібні.
Коротка відповідь
Для співбесідиКоротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.