Vue的dbclick指令用于綁定雙擊事件,當(dāng)元素被雙擊時(shí),所綁定的回調(diào)函數(shù)就會(huì)被觸發(fā)執(zhí)行。該指令的使用方法與v-on指令類似,只需在要綁定事件的元素上添加v-dbclick指令并指定回調(diào)函數(shù)即可。
<template>
<div v-dbclick="handleDbclick">雙擊我</div>
</template>
<script>
export default {
methods: {
handleDbclick() {
console.log('雙擊!');
}
}
}
</script>
上述代碼將在頁(yè)面中顯示一個(gè)div元素,當(dāng)該元素被雙擊時(shí),控制臺(tái)將輸出“雙擊!”。
同樣的,v-dbclick指令也可以接收事件參數(shù):
<template>
<div v-dbclick="handleDbclick($event)">雙擊我</div>
</template>
<script>
export default {
methods: {
handleDbclick(event) {
console.log('雙擊!鼠標(biāo)坐標(biāo):', event.clientX, event.clientY);
}
}
}
</script>
在上述代碼中,handleDbclick方法接收一個(gè)事件參數(shù),通過(guò)該參數(shù)可以獲取到鼠標(biāo)的坐標(biāo)信息。
需要注意的是,v-dbclick指令只能綁定在普通元素上,如果要給組件綁定雙擊事件,可以通過(guò)在組件內(nèi)部添加一個(gè)普通元素,再給該元素添加v-dbclick指令實(shí)現(xiàn):
<template>
<div>
<div v-dbclick="handleDbclick">雙擊我</div>
<my-component/>
</div>
</template>
在上述代碼中,給my-component組件的父元素添加了v-dbclick指令,并將回調(diào)函數(shù)綁定在該元素上。