vue2 与vue3 中v-model的区别

vue2

在Vue2中,可以在子组件标签上用v-model来实现父子组件之间的双向通信,它的本质是"v-bind:value"与"v-on:input"的结合。这也就意味着一个子组件标签上只能有一个v-model,如果想绑定其他属性和自定义事件的组合,就需要用.sync修饰符来实现。

vue3

在Vue3中去除了.sync语法,将v-model语法设计为可以绑定任意属性和任意自定义事件的组合,这样在一个子组件标签上就可以使用多个v-model了。

Vue3将v-model的设计原理进行了改造,v-model不再单纯是"v-bind:value"与"v-on:input"的结合,已经演化为"v-bind:modelValue"与"v-on:'update:modelValue'"的结合,直接绑定modelValue并且监听update:modelValue就可以实现v-model双向数据绑定的操作。

相关推荐
Hilaku12 分钟前
为什么在 2026 年,MPA(多页面应用)正在悄悄复辟?
前端·javascript·程序员
幸福小宝16 分钟前
eslint和prettier
前端
anyup16 分钟前
终于在今天入选了 Gitee GVP,这真值得庆祝~
前端·uni-app·开源
幸福小宝19 分钟前
husky和lint-staged
前端
悟空瞎说20 分钟前
iOS 高效绘图
javascript
Slice_cy43 分钟前
Mint 自研框架设计与实现:从重复开发走向配置驱动(五)
前端·后端·架构
寒水馨1 小时前
Windows下载、安装 Tailwind CSS-v4.3.3(附安装包tailwindcss-windows-x64.exe)
前端·css·前端开发·tailwind css·utility-first·css 框架·独立 cli
西楼_1 小时前
一文读懂React19究竟更新了什么
前端
四眼肥鱼1 小时前
【Nextjs】macos 系统运行报错:Error: Cannot find module '../lightningcss.darwin-x64.node'
前端·架构·前端框架
hoLzwEge1 小时前
Unplugin Turbo Console:让你的 `console.log` 脱胎换骨
前端·前端框架