实例事件

在构造器外添加事件$on

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<div id="app">
<p>{{count}}</p>
<p><button @click="add">add</button></p>
</div>
<p><button onclick="reduce()">reduce</button></p>
<script>
var app = new Vue({
el:'#app',
data:{
count:1
},
methods:{
add:function(){
this.count++
}
}
})
app.$on('reduce',function(){
this.count--;
console.log('构造器外方法被调用')
})
function reduce(){
app.$emit('reduce')
}
//当按钮在作用域外用$emit调用

once事件$once

1
<p><button onclick="reduceOnce()">reduceOnce</button></p>
1
2
3
4
5
6
7
app.$once('reduceOnce',function(){
this.count--;
console.log('只执行一次的方法被调用')
})
function reduceOnce(){
app.$emit('reduceOnce')
}

off事件$off

1
<p><button onclick="off()">off</button></p>
1
2
3
function off(){
app.$off('reduceOnce')
}
-------------本文结束感谢您的阅读-------------