3-08兄弟之间传值

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>兄弟之间传值</title>

<script src="vue-04/vue.min.js" type="text/javascript" charset="utf-8"></script>

</head>

<body>

<div id="app">

<first></first>

<second></second>

</div>

<!--定义两个组件-->

<template id="first">

<div>

<!--<h2>斌斌</h2>-->

<p>航航回复斌斌的消息:{{str}}</p>

<button @click="send()">向航航发送邀请</button>

</div>

</template>

<template id="second">

<div>

<h3>斌斌向航航发送的消息:{{msg}}</h3>

<button @click="callback()">回复给斌斌</button>

 

</div>

</template>

</body>

<script type="text/javascript">

//定义一下中间层传递数据

var vmcenter = new Vue({});

//配置第一个组件

var first={

template:"#first",

data:function(){

return {

str:"",

 

}

},

methods:{

send:function(){

//通过中间层发送数据

vmcenter.$emit("hightogether","一起出去玩吧");

}

},

//监听组件2发的事件

created:function(){

var _this = this;

vmcenter.$on("cb",function(data){

_this.str=data;

});

}

};

//配置第二个组件

var second={

template:"#second",

data:function(){

return{

msg:""

}

},

//回复

methods:{

callback:function(){

vmcenter.$emit("cb","不想去");

}

},

created:function(){

var _this=this;

//监听组件1发的事件

vmcenter.$on("hightogether",function(data){

console.log(data);

_this.msg=data;

})

}

}

 

new Vue({

el:"#app",

components:{

first,

second

}

})

 

 

</script>

</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值