小前端有话说之:[Vue warn]: Avoid mutating a prop directly since the value will be overwritte父子组件传值问题及sync用法

相信刚入坑的小前端们在父子组件传值修改的时候或多或少会出现这种警告
在这里插入图片描述
警告原因:vue不推荐直接在子组件中修改父组件传来的props的值,会报警告~~

即通过props传递给子组件的值,不能在子组件内部修改props中的值。
vue的prop是单向下行绑定:父级的prop的更新会向下流动到子组件中,但是反过来不行。可是有些情况,我们需要对prop进行“双向绑定”
解决方案

一、
在 计算属性 或者 方法中用$emit 通知父组件改变 即子传父方案 提醒父组件修改其中值
二、(推荐方法)
在父传子的时候 以对象的形式传入 这样在子组件更改其值 不会报警告 如果直接传值 则会 (这里涉及到引用类型和值类型传递区别即 深拷贝 浅拷贝 )
三、sync修饰符(推荐)
在这里插入图片描述

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值