Vue--关于v-model指令

语法糖

v-model即可以作用于表单元素,又可作用于自定义组件,无论是哪一种情况,它都是一个语法糖,最终会生成一个属性和一个事件。

当其作用于表单元素时vue会根据作用的表单元素类型而生成合适的属性和事件。例如,作用于普通文本框的时候,它会生成value属性和input事件,而当其作用于单选框或多选框时,它会生成checked属性和change事件。

v-model也可作用于自定义组件,当其作用于自定义组件时 ,默认情况下,它会生成一个value属性和input事件。

html 复制代码
<Comp v-model="data" />
<!-- 等效于 -->
<Comp :value="data" @input="data=$event" />

开发者可以通过组件的model配置来改变生成的属性和事件:

js 复制代码
// Comp
const Comp = {
  model: {
    prop: "number", // 默认为 value
    event: "change" // 默认为 input
  }
  // ...
}
html 复制代码
<Comp v-model="data" />
<!-- 等效于 -->
<Comp :number="data" @change="data=$event" />
相关推荐
Asize6 小时前
重生之我在 Vibe Coding 时代当程序员:第十五课,正则表达式和 HTTP 请求:规则不是背出来的,是拆出来的
前端·javascript·后端
Mintopia6 小时前
从意图到评估:理解用户操作产品的完整行动链路
前端
竹林8186 小时前
从报错到跑通:我用 @solana/web3.js 在 React 中实现 Solana 钱包连接的全过程
前端
Asize6 小时前
重生之我在 Vibe Coding 时代当程序员:第十六课,从模拟队列到原型链
前端·javascript·后端
vim怎么退出6 小时前
Dive into React——高级特性
前端·react.js·源码阅读
如果超人不会飞6 小时前
TinyVue Container 组件完全指南:五种版型撑起你的"应用骨架"
前端·vue.js
冰暮流星6 小时前
javascript之this关键字
开发语言·前端·javascript
百度Geek说6 小时前
CodingAgent 的原始森林困境:一张地图能解决什么?
开发语言·javascript·ecmascript·coding agent
余大大.6 小时前
SystemVerilog-参数宏与拼接符的使用
前端
羸弱的穷酸书生6 小时前
跟AI学一手之前端导出
前端·文件导出