当前位置:首页 > VUE

怎么用vue.js实现双向绑定

2026-01-06 23:44:51VUE

Vue.js 双向绑定的实现方法

Vue.js 的核心特性之一是数据双向绑定,主要通过 v-model 指令实现。以下是具体实现方式:

基础用法

在表单元素上使用 v-model 指令,将表单输入与 Vue 实例的数据属性绑定:

<input v-model="message" placeholder="输入内容">
<p>输入的内容是: {{ message }}</p>

对应的 Vue 实例:

new Vue({
  el: '#app',
  data: {
    message: ''
  }
})

修饰符应用

Vue 提供修饰符扩展 v-model 的功能:

  • .lazy:将输入事件改为 change 事件触发

    <input v-model.lazy="msg">
  • .number:自动将输入转为数字类型

    <input v-model.number="age" type="number">
  • .trim:自动过滤首尾空白字符

    <input v-model.trim="text">

组件中的双向绑定

在自定义组件中实现双向绑定需要显式定义:

Vue.component('custom-input', {
  props: ['value'],
  template: `
    <input
      :value="value"
      @input="$emit('input', $event.target.value)"
    >
  `
})

使用时保持与原生元素相同:

<custom-input v-model="searchText"></custom-input>

原理说明

Vue 的双向绑定实质是语法糖,包含两个操作:

  1. 将数据绑定到元素的 value 属性
  2. 监听输入事件更新数据

等价于以下代码:

<input
  :value="message"
  @input="message = $event.target.value"
>

多选框绑定

处理多选框时需要绑定数组:

<input type="checkbox" v-model="checkedNames" value="Jack">
<input type="checkbox" v-model="checkedNames" value="John">
<span>选中的名字: {{ checkedNames }}</span>

数据定义:

data: {
  checkedNames: []
}

单选按钮绑定

单选按钮直接绑定到同一变量:

<input type="radio" v-model="picked" value="one">
<input type="radio" v-model="picked" value="two">
<span>选择的值: {{ picked }}</span>

下拉选择框绑定

select 元素绑定方式:

怎么用vue.js实现双向绑定

<select v-model="selected">
  <option disabled value="">请选择</option>
  <option>A</option>
  <option>B</option>
</select>
<span>选择的值: {{ selected }}</span>

标签: 绑定双向
分享给朋友:

相关文章

vue 双向绑定实现

vue 双向绑定实现

Vue 双向绑定的实现原理 Vue 的双向绑定主要通过数据劫持结合发布者-订阅者模式实现,核心是 Object.defineProperty(Vue 2.x)或 Proxy(Vue 3.x)。 数据…

vue实现双休绑定

vue实现双休绑定

Vue 实现双向绑定 Vue.js 通过 v-model 指令实现双向绑定,主要用于表单输入元素(如 <input>、<textarea>、<select>)与组件…

vue 实现双向绑定

vue 实现双向绑定

Vue 双向绑定的实现原理 Vue 的双向绑定主要通过 v-model 指令实现,底层基于数据劫持和发布-订阅模式。以下是核心实现机制: 数据劫持(响应式系统) Vue 使用 Object.defi…

vue实现事件绑定

vue实现事件绑定

Vue 事件绑定实现方法 Vue 提供了多种方式实现事件绑定,以下是常用方法: v-on 指令 使用 v-on 指令绑定事件监听器,语法为 v-on:event="handler" 或简写为 @ev…

怎么实现vue双向绑定

怎么实现vue双向绑定

Vue 双向绑定的实现原理 Vue 的双向绑定主要通过 v-model 指令实现,其核心是结合数据劫持(Object.defineProperty 或 Proxy)和发布-订阅模式。 使用 v-mo…

vue中实现双向数据

vue中实现双向数据

Vue 中实现双向数据绑定的方法 使用 v-model 指令 v-model 是 Vue 提供的语法糖,用于在表单元素上实现双向数据绑定。它会根据控件类型自动选取正确的方法来更新元素的值。 <…