1、子组件更新,父组件不变
点击“按钮”按钮,子组件数据被修改,父组件数据不变
=========>>>>>>
项目源代码,
<head>
<meta charset="UTF-8">
<title>v2.0父子组件通信</title>
<script src="./vue.js"></script>
<script>
window.onload=function(){
new Vue({
el: ‘#box‘,
data: {
aa: ‘我是父组件中的数据‘
},
components: {
‘child-com‘: {
props: [‘msg‘], //接收父组件传递过来的信息
template: ‘#child‘,
methods:{
change(){
this.msg=‘被修改‘
}
}
}
}
});
};
</script>
<!--子组件修改不能改变父组件的修改-->
</head>
<body>
<template id="child">
<div>
<h3>我是子组件</h3>
<input type="button" value="按钮" @click="change">
<strong>{{msg}}</strong>
</div>
</template>
<div id="box">
父级: -> {{ aa }}
<child-com :msg="aa"></child-com>
</div>
</body>
2、子组件更新,父组件随之更新
点击“按钮”按钮,父子组件均数据被修改,
<head>
<meta charset="UTF-8">
<title>v2.0父子组件通信</title>
<script src="./vue.js"></script>
<script>
window.onload=function(){
new Vue({
el: ‘#box‘,
data: {
giveData:{
aa: ‘我是父组件中的数据‘
}
},
components: {
‘child-com‘: {
props: [‘msg‘], //接收主组件传递过来的信息
template: ‘#child‘,
methods:{
change(){
//this.msg=‘被修改‘
this.msg.aa=‘被修改‘
}
}
}
}
});
};
</script>
<!--子组件修改不能改变父组件的修改-->
</head>
<body>
<template id="child">
<div>
<h3>我是子组件</h3>
<input type="button" value="按钮" @click="change">
<strong>{{msg.aa}}</strong>
</div>
</template>
<div id="box">
父级: -> {{ giveData.aa }}
<child-com :msg="giveData"></child-com>
</div>
</body>
原文地址:https://www.cnblogs.com/sunnyyangwang/p/10286601.html