vue 的v-model
时间: 2024-09-04 12:01:14 浏览: 66
Vue的`v-model`是其核心特性之一,它实现了视图层和数据模型之间的双向数据绑定。`v-model`可以用于各种输入元素,如`<input>`、`<textarea>`和`<select>`,以及其他自定义组件。让我们通过两个例子来了解它的工作原理:
1. **基本文本输入双向绑定**[^2]:
```html
<div id="app">
<input v-model="message" type="text"> <!-- 这里v-model绑定了data中的message属性 -->
<p>{{ message }}</p> <!-- {{ }}是模板语法,显示message的值 -->
</div>
```
在这个例子中,当你在输入框中输入内容时,`message`的数据会实时更新,并反映到页面上。
2. **条件渲染(v-if)**[^1]:
```html
<div v-if="showMessage">
<input v-model="message">
<p>{{ message }}</p>
</div>
<script>
//...
data: {
showMessage: false,
message: ''
},
//...
methods: {
toggleMessage: function() {
this.showMessage = !this.showMessage;
}
}
</script>
```
当`showMessage`为`true`时,`v-model`才会生效。你可以通过调用`toggleMessage()`方法来动态控制表单的显示或隐藏。
总结来说,`v-model`让你能够方便地在Vue组件中创建响应式的用户界面。它简化了状态管理,减少了手动同步数据的工作。
阅读全文