vue双向绑定和双向修改写法总结
2.x 双向绑定
//使用value和input老式写法 <ChildComponent v-model="pageTitle" /> //是以下的简写 <ChildComponent :value="pageTitle" @input="pageTitle = $event" /> //不使用value和input的写法,title代替value,change代替input <ChildComponent v-model="pageTitle" /> //是以下的简写 <ChildComponent :title="pageTitle" @change="pageTitle = $event" /> export default { model: { prop: 'title', event: 'change' }, props: { // 这将允许 `value` 属性用于其他用途 value: String, // 使用 `title` 代替 `value` 作为 model 的 prop title: { type: String, default: 'Default title' } } }
2.x sync双向修改
<ChildComponent :title.sync="pageTitle" /> //是以下的简写 <ChildComponent :title="pageTitle" @update:title="pageTitle = $event" /> //组件内部使用update:title事件更新prop的值 this.$emit('update:title', newValue)
3.x 双向绑定
//3.x的双向绑定使用modelValue和@update:modelValue,不再使用value和input <ChildComponent v-model="pageTitle" /> //是以下的简写 <ChildComponent :modelValue="pageTitle" @update:modelValue="pageTitle = $event" /> //3.x的v-model可以代替.sync写法,指定属性 <ChildComponent v-model:title="pageTitle" /> //是以下的简写 <ChildComponent :title="pageTitle" @update:title="pageTitle = $event" /> //3.x的v-model可以对多个属性进行双向绑定 <ChildComponent v-model:title="pageTitle" v-model:content="pageContent" /> //是以下的简写 <ChildComponent :title="pageTitle" @update:title="pageTitle = $event" :content="pageContent" @update:content="pageContent = $event" />
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2018-02-28 'webpack-dev-server' 不是内部或外部命令,也不是可运行的程序
2018-02-28 vue数组对象修改触发视图更新
2017-02-28 点击其他区域关闭dialog