Директива v-model во Vue.js - это мощный инструмент для создания двустороннего связывания данных (data binding). Двустороннее связывание данных означает, что при изменении модели данных автоматически обновляется пользовательский интерфейс (UI), и наоборот, при внесении пользователем изменений в UI, эти изменения автоматически отражаются в модели данных.
Дректива v-model отлично подходит для работы с формами. Допустим, у вас есть текстовое поле ввода в форме и вы хотите, чтобы значение этого поля было связано с переменной в вашем Vue-приложении. В этом случае вы можете использовать v-model следующим образом:
<input type="text" v-model="message">
Если переменная message в вашем Vue-приложении изменяется, это автоматически обновит значение текстового поля ввода. Аналогичным образом, если пользователь вводит что-то в это поле, значение переменной message также будет автоматически обновляться.
new Vue({
el: '#app',
data: {
message: ''
}
})
При использовании директивы v-model важно помнить о некоторых особенностях. Во-первых, v-model работает только с элементами форм и компонентами, которые имеют свое собственное событие input. Во-вторых, v-model всегда привязывается к свойству value элемента или компонента и слушает событие input на нем.
Итак, директива v-model позволяет реализовать эффективное двустороннее связывание данных, облегчая управление состоянием Vue-приложения и повышая удобство его использования.