10 - Vue 学习笔记 - v-model 的使用

本文详细介绍了 Vue.js 中的 v-model 指令的使用,包括基本的双向绑定原理、v-model 在不同表单元素(如 radio、checkbox、select)中的应用,并提供了实例说明其工作方式。通过理解 v-model 的实现,开发者能够更好地掌握 Vue 中的数据绑定和表单交互。
摘要由CSDN通过智能技术生成

v-model

v-model 的使用

表单控件在实际开发中是非常常见的。特别是对于用户数据的提交,需要大量的表单

Vue 中使用 v-model 指令来实现表单元素和数据的双向绑定。
让我们来看一下什么是双向绑定。

<div id="app">
	<label>
		<!-- message 与 input 通过 v-model 双向绑定 -->
		<input type="text" v-model="message">
	</label>
	<!-- 用于观察变化的 message	-->
	<h2>{
  {message}}</h2>
</div>

<script src="../js/vue.js"></script>
<script>
	const app = new Vue({
     
		el: "#app",
		data: {
     
			message: "hello"
		}
	});
</script>

通过上面代码,我们会发现,我们通过修改 input 里面的文本内容,外面展示的 message 也会发生变化,同时通过控制台,我们也可以发现我们保存的 message 也发生了变化,同样地通过控制台修改内容,文本框里面的内容也会发生改变。


v-model 原理

v-model 其实是两个 Vue 指令的结合,我们在 input 中先添加 v-bind:value=“message” ,然后这个时候数据就和 input 里面的内容完成了单向绑定。

<input type="text" v-bind:value="message">

我们可以通过控制台修改 message 的内容,发现 inputh2 里面的 message 都发生了改变。
但是我们会发现,如果我们通过修改 input 确不能让 h2 里面的内容发生改变,显然,这个时候内存中的 message 变量也没有发生改变,可以通过控制台看到。
那么怎么绑定另外一端的数据呢,我们可以发现 input 有一个事件就叫做 input(当 inputvalue 值发生变化时就会触发),因此我们可以想到,通过个事件,改变 message 的值,
因此我们可以在 methods 中写一个方法,我们可以通过 event 对象的 target 属性的 value 属性获取 value,同时修改,这样就实现了另一端的数据绑定。

<div id="app">
	<label>
		<!-- v-model 实际上是两个指令的结合	-->
		<-- 完整写法 -->
		<-- <input type="text" v-bind:value="message" v-on:input="valueChange"> -->
		<-- 使用语法糖 -->
		<input type="text" :value="message" @input="valueChange">

	</label>
	<h2>{
  {message}}</h2>
</div>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值