vue中子组件修改父组件数据报错

本文探讨了在Vue2.0+中,由于数据流的单向性,子组件修改父组件数据会报错的问题。文章介绍了两种解决方案:1) 使用事件$emit通知父组件进行数据修改;2) 在父组件中通过.sync修饰符实现双向绑定。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

vue中子组件修改父组件数据报错

vue中父子组件数据传递

解决在子组件中修改父组件传来的数据,报错如下:
在vue2.0+ 后不再是双向绑定,如果要进行双向绑定需要特殊处理。

[Vue warn]: Avoid mutating a prop directly since the value will be overwritten whenever the parent component re-renders. Instead, use a data or computed property based on the prop's value. Prop being mutated: "你修改的属性名"

由于在vue中数据流是单向的。

方法1 通过事件$emit父组件修改

**父组件中**
<template>
	<div>
		<el-button type="text" @click="dialogVisible = true">点击打开Dialog</el-button>
		<child @closeDialog="getCloseDialog" :visiable="dialogVisible"></child>	
	</div>
</template>	
<script>
//引入子组件
export default {
     
     
	data() {
     
     
		return {
     
     
			dialogVisible: false,
		}
	},
	methods:{
     
     
		getCloseDialog(value){
     
     
			this.dialogVisible=value
		}
	}
}
</script>
**子组件中**
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值