> Что такое ViewModel во Vue и как он работает (Vue.js)
Уровень: junior · Роль: frontend · Категория: Технические вопросы
Компании: Библио-Глобус
Стек: Vue.js
> Пример ответа
ViewModel - это ключевая концепция, реализующая паттерн MVVM (Model-View-ViewModel). В контексте Vue.js ViewModel представлен экземпляром Vue (или компонентом), который связывает Model (данные, состояние приложения) и View (DOM-шаблон). Vue использует реактивную систему: когда данные в Model изменяются, View автоматически обновляется, и наоборот - пользовательские события в View (например, клики) могут изменять Model через методы.
Как это работает:
-
Реактивность: Vue «проксирует» объект данных (data), превращая его свойства в реактивные с помощью геттеров/сеттеров. При изменении свойства Vue уведомляет зависимые компоненты и перерисовывает только изменённые части DOM.
-
Двустороннее связывание: Через директиву
v-modelView и Model синхронизируются: изменение ввода обновляет данные, а изменение данных обновляет ввод. -
Композиция: Каждый компонент Vue - это свой ViewModel, который инкапсулирует свою логику и шаблон, что упрощает разработку и тестирование.
Пример:
JAVASCRIPTnew Vue({el: '#app',data: { message: 'Привет' }, // Modelmethods: { update() { this.message = 'Новое' } } // Логика ViewModel});
Шаблон <input v-model="message"> автоматически связывает View и Model через ViewModel.
> Похожие задачи по frontend
Что такое reactive и ref во Vue Composition API, для чего они нужны и чем отличаются?
Как задать значение по умолчанию для defineProps во Vue с TypeScript
Почему выбрали Vue и учитывали ли преимущества инструментов
Как реализована реактивность во Vue 2 и Vue 3 и в чем их отличия
> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?
Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью