相信刚入坑的小前端们在父子组件传值修改的时候或多或少会出现这种警告
警告原因:vue不推荐直接在子组件中修改父组件传来的props的值,会报警告~~
即通过props传递给子组件的值,不能在子组件内部修改props中的值。
vue的prop是单向下行绑定:父级的prop的更新会向下流动到子组件中,但是反过来不行。可是有些情况,我们需要对prop进行“双向绑定”
解决方案
一、
在 计算属性 或者 方法中用$emit 通知父组件改变 即子传父方案 提醒父组件修改其中值
二、(推荐方法)
在父传子的时候 以对象的形式传入 这样在子组件更改其值 不会报警告 如果直接传值 则会 (这里涉及到引用类型和值类型传递区别即 深拷贝 浅拷贝 )
三、sync修饰符(推荐)