<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Vue 测试实例 - 菜鸟教程(runoob.com)</title>
<script src="https://cdn.staticfile.org/vue/2.4.2/vue.min.js"></script>
</head><body>
<div id="app">
<c1 ref='ref1'></c1><hr>
<c2></c2>
<c2></c2>
</div>
<!-- js -->
<script>
var cc=new Vue();
var vm=new Vue({
el:'#app',
components:{
c1:{
template:"<input v-model='c1Val' @keyup='c1func'/>",
methods:{
c1func:function(){
cc.$emit('ccfunc',this.c1Val);
}
},
data:function(){return {c1Val:0}}
},
c2:{
template:"<h1>{{c2Val}}</h1>",
data:function(){return {c2Val:1}},
mounted:function(){
$this=this;
cc.$on('ccfunc',function(msg){
//$this.c2Val=msg;
$this.c2Val=vm.$refs.ref1.c1Val
})
}
}
}
})
如代码所示,修改c1的输入框,第二个c2回跟着改变,第一个c2始终不变。这是为什么