vue.js中$emit的理解

Posted 莫笑我胡为

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue.js中$emit的理解相关的知识,希望对你有一定的参考价值。

 

 

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<!--父组件是使用 props 传递数据给子组件,但如果子组件要把数据传递回去则使用自定义事件!-->
<div id="app">
<p>{{total}}</p>
<button-counter v-on:increment=‘incrementTotal‘></button-counter>
<button-counter @increment=‘incrementTotal‘></button-counter>
</div>

</body>
<script type="text/javascript" src="vue.js"></script>
<script type="text/javascript">
Vue.component(‘button-counter‘,{
template:‘<button v-on:click="increment">{{counter}}</button>‘,
data:function(){
return {
counter:0
}
},
methods:{
increment:function(){
this.counter +=1;
//$emit(‘increment1‘,[12,‘kkk‘]),直接看是懵逼的有没有,可以先告诉你,就是触发自定义事件increment1(或者函数名吧),[]为参数
this.$emit(‘increment‘)
}
}
})

var app = new Vue({
el:‘#app‘,
data:{
total:0
},
methods:{
incrementTotal:function(){
this.total += 1;
}
}
})
</script>
</html>












































以上是关于vue.js中$emit的理解的主要内容,如果未能解决你的问题,请参考以下文章

vue.js学习笔记— $emit 作用快速了解

(vue.js)关于Vuejs的$emit和$on传值不成功的问题

Vue.js - 从孙插槽组件发射没有将 $emit 事件冒泡到父级

Vue.js中子组件向父组件传递信息。

html vue.js在组件$ .emit之外发送数据

Vue js:this.$emit 不是函数