vue自定义事件将组件内的数据传输到实例中去使用
<body>
<div id="app">
<h1 style="color:deeppink">{{ outer_title }}</h1>
//③给实例绑定一个方法
<hello :reader="new_msg" v-on:chang_event="chang_tit"></hello>
</div>
<script>
var vm = new Vue({
el: "#app",
data: {
new_msg: "我是实例中的数据信息",
outer_title: "外部的title"
},
components: {
"hello": {
data() {
return {
msg: "我是组件中的数据信息"
}
},
template: `
//①在组件内进行事件绑定
<h1 @click="change">我在组件中只读取我组件中的数据,所以{{ msg }} -- {{ reader }}
</h1>
`,
props: ["reader"],
methods: {
//②t添加事件触发将要执行的方法
change() {
//这里是调用触发实例中的方法,将参数作为第二参数带过去
this.$emit("chang_event", this.msg);
}
}
},
},
//④给实例定义触发要执行的方法
methods: {
此处的prama参数是第①步的第二个参数 this.msg
chang_tit(prama) {
this.outer_title = prama;
}
}
})
</script>
</body>