父子组件的值关系,子组件修改props传过来的对象类型值,继而改变父组件的值

编程入门 行业动态 更新时间:2024-10-09 02:31:27

父子<a href=https://www.elefans.com/category/jswz/34/1771375.html style=组件的值关系,子组件修改props传过来的对象类型值,继而改变父组件的值"/>

父子组件的值关系,子组件修改props传过来的对象类型值,继而改变父组件的值

  • vue2.0中,子组件中不能修改父组件的状态,否则在控制台中会报错。
  • 比如,父组件传给子组件一个变量,子组件只能接收这个值,不能修改这个值,修改会报错。想要修改,只能赋值给另一个data中定义的变量
  • 但是,这仅限于props为非数组及对象等引用类型数据,譬如字符串,数字等
  • 如果props是对象的话,在子组件内修改props的话,父组件是不会报错的,父组件的值也会跟着改变

父组件传递给子组件一个对象,子组件将这个对象改了值,那么父组件中的值相应改变
为对象添加属性的时候,最好用这种方式增加,而不是直接点加,this.$set(this.food,'count',1)

例如:

//父组件
<template><div class="hello"><div>{{obj.a}}</div><child :obj="obj"></child></div>
</template>
<script>
import Child from './child'
export default {name: 'Parent',components:{Child},data () {return {obj: {a: 111111}}}
}
</script>//子组件
<template><div id="child"><button @click="changeObj">修改obj的属性值</button>{{obj}}</div>
</template>
<script>
export default {props:{obj:{type: Object,defalut:{a: 111}}},methods:{changeObj(){this.$set(this.obj,'a','2222222')}}
}
</script>

更多推荐

父子组件的值关系,子组件修改props传过来的对象类型值,继而改变父组件的值

本文发布于:2024-02-07 05:59:25,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1754299.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:组件   父子   对象   类型   关系

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!