Vue中如何实现父子组件数据双向绑定
发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,这篇文章将为大家详细讲解有关Vue中如何实现父子组件数据双向绑定,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。实现思路:父 向 子 组件传值:使用 props 属性
千家信息网最后更新 2025年01月19日Vue中如何实现父子组件数据双向绑定1、父向子传值
这篇文章将为大家详细讲解有关Vue中如何实现父子组件数据双向绑定,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
实现思路:
父 向 子 组件传值:使用 props
属性。( props
是property
[属性] 的复数简写 )
子 向 父 组件传值:使用自定义事件。
一、父子组件单向传值
1、父向子传值
父向子组件传值,子组件接收到数据之后,保存到自己的变量中。
//父组件写法//子组件定义以及数据 components:{ cld:{ template:'#child', props:{ numP:Number }, } } //子组件内容 {{ numP }}
props 用于接收父组件传过来的值,props 的写法有很多种,具体如:
//方式1 : 直接接收数据 props: [ 'numP' ] //方式2: 加类型限制 props: [ numP: Number ] //方式3:添加默认值 props: [ numP: { type:Number, default:0 } ] //方式4:是否必须值限制 props: [ numP: { type:Number, default:0, require:true //添加必须值,不传此值会报错 } ] //方式5:采用对象形式 props: { numP: { type:Number, default:0, } }
2、子向父传值
子向父组件传值,主要通过自定义事件进行传值,具体实例如下:
// 父组件内容子组件获取到的数据{{getNum}}//父组件方法 methods:{ getNumC(data){ this.getNum = data //接收子组件传的数据 } }, //子组件定义 components:{ cld:{ template:'#child', data(){ return{ numC:1314 //子组件数据定义 } }, mounted(){ this.$emit( 'accept' , this.numC ) // 触发自定义事件 } } },
二、父子组件数据双向绑定
Vue
的数据都是单向流动的,而且 vue
中从来就没有任何的双向绑定,v-model
实现的双向绑定只是语法糖而已。
方式1:利用 watch
实现父子组件的数据双向绑定,具体实例如下:
数据//子组件内容
{{num}}
数据const app = new Vue({ el:'#app', data:{ num:'520', }, methods:{ getNumC(data){ this.num = data } }, components:{ cld:{ template:'#child', props:{ numb:String }, data(){ return{ childNum:0, } }, watch:{ numb:function(){ this.childNum = this.numb }, childNum:function(){ this.$emit('accept',this.childNum) } }, mounted(){ this.childNum = this.numb } } } })
{{childNum}}
方式2:.sync
修饰符实现双向绑定
在vue 1.x 中的 .sync 修饰符所提供的功能。当一个子组件改变了一个带 .sync 的 prop 的值时,这个变化也会同步到父组件中所绑定的值。这很方便,但也会导致问题,因为它破坏了单向数据流。(数据自上而下流,事件自下而上走)
//会扩展为: bar = val"/>
当组件需要更新 numb 的值时,需要触发更新事件:
this.$emit("update:numb", newValue );
使用具体实例如下:
// 父组件//子组件 props: ['foo'], data() { return { newFoo: this.foo; } }, methods:{ add:function(){ this.newMsg=10; this.$emit('update:foo',this.newFoo); } }
关于"Vue中如何实现父子组件数据双向绑定"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
组件
数据
双向
方式
父子
事件
内容
单向
实例
篇文章
写法
属性
更多
更新
限制
不错
实用
个子
功能
变量
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
应急网络安全知识竞赛进度
数据库时间字段设置自动填充
商务软件开发课程报告
物理服务器-就到光算云
深圳汽车网络安全竞技
网络安全都有哪些方向
阿里ecs云服务器防护
网络安全意识弱
新兴的网络安全零信任安全
我和网络安全手抄报简单
思科网络技术试题库
网络安全产业园是什么意思
网络安全辩论会教案
工业网络安全工程师职业前景
电脑软件开发合作协议书
创建数据库表视频教程
杭州定制化国产服务器
数据库系统技术架构
蚌埠小岩网络技术有限公司
艾尔登法环链接服务器闪退
泰康人寿软件开发工资
数据库有哪四个创表方式
一酷互联网科技北京有限公司
数据库空值怎么表示好
什么样的软件开发需要模型
app黑科技软件开发
考研武大网络安全
数据库程序员工资多少
大话西游2哪个服务器
仕佳网络技术有限公司怎么样