当前位置:首页 > 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 元素绑定方式:

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

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

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

相关文章

vue实现双向

vue实现双向

Vue 实现双向绑定的方法 Vue 的双向绑定主要通过 v-model 指令实现,它结合了数据绑定和事件监听,适用于表单元素(如 input、select、textarea 等)。以下是几种常见的实现…

jquery事件绑定

jquery事件绑定

jQuery 事件绑定的基本方法 使用 on() 方法绑定事件是最推荐的方式,兼容性强且支持动态元素。语法如下: $(selector).on(eventName, handlerFunction)…

vue如何实现绑定

vue如何实现绑定

数据绑定基础 Vue 通过 v-bind 指令实现动态绑定 HTML 属性或组件 prop。基本语法为 v-bind:属性名="表达式",简写为 :属性名="表达式"。例如绑定 class 或 sty…

vue怎么实现input绑定

vue怎么实现input绑定

实现 Vue 中 input 绑定的方法 使用 v-model 指令实现双向绑定 v-model 是 Vue 提供的语法糖,用于实现表单元素与数据的双向绑定。它会根据输入框类型自动选取正确的方式更新数…

vue数据双向绑定实现

vue数据双向绑定实现

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

实现Vue双向数据绑定

实现Vue双向数据绑定

Vue 双向数据绑定的实现原理 Vue 的双向数据绑定是通过 v-model 指令实现的,其核心基于 数据劫持 和 发布-订阅模式。具体实现分为以下几个部分: 数据劫持(Object.define…