Vue中还有一个很重要的指令就是事件绑定v-on,让DOM可以去做更多的事情。
使用的方式为v-on:[事件名称]="运算式"
,像count++较简短的运算可以直接写,而比较复杂的运算式可以使用methods
处理,给予一个事件名称做绑定。
<div id="app">
<p>count : {{count}}</p>
<button v-on:click="count++">add</button>
<button v-on:click="add">add</button>
</div>
const vm = Vue.createApp({
data() {
return {
count: 0,
}
},
methods: {
add() {
this.count++
}
}
}).mount('#app');
若需要传入参数可以用$event
带入,就像范例中input改数字後会传入methods
的add(amount,event)
,再次按下add按钮就会count+5,改变了原本的count+1。
<div id="app">
<p>count : {{count}}</p>
<input v-model.number="amount"></input>
<button v-on:click="add(amount,$event)">add</button>
</div>
const vm = Vue.createApp({
data() {
return {
count: 0,
amount: 1
}
},
methods: {
add(amount, event) {
this.count += amount
console.log(event.target.tagName, amount)
}
}
}).mount('#app');
event.stopPropagation()
,click事件不会向外层传递event.preventDefault()
,阻挡元素预设行为event.preventDefault()
@keyup.enter
<!--ctrl+任何按钮都会触发-->
<button v-on:click.ctrl="onClick">A</button>
<!--只有ctrl才会触发-->
<button v-on:click.ctrl.exact="onCtrlClick">A</button>
监听事件
https://cn.vuejs.org/v2/guide/events.html#按键码
>>: 第20天 - 来试着做一个简易购物系统(4)购物车卡关了,先确定能新增资料:(
Conclusions and Discussion 在这二十几天来的技术文章分享,我们可以看到每个...
Abstract 大家好,我是游戏王怪兽之决斗小编威斯~~丁,想必大家都知道游戏王的贝卡斯的千年眼可...
当我们在定义类别时,有三种东西可以定义,属性(field)、建构子(constructor)、方法(...
该文章同步发布於:我的部落格 改变数值的时候 昨天提到变动性的问题是什麽呢? 我们到现在的测试都是...
前言 好的,那就来看看firebase到底是什麽吧。 Firebase 我们这次会用到firebas...