您好,登錄后才能下訂單哦!
本篇內容主要講解“VUE入門學習之如何理解事件處理”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“VUE入門學習之如何理解事件處理”吧!
可以用v-on:click="methodName"或者快捷方式 @click="methodName"綁定事件處理函數
@click="methodName()"也可以,@click="methodName"猜測是簡寫
<div v-on:click="add">{{ count }}</div> <div @click="add">{{ count }}</div>
data() { return { count: 0, }; }, methods: { add() { this.count++; }, },
可以直接在往事件綁定的函數里傳參數和$event
<div @click="set(0, $event)">{{ count }}</div>
data() { return { count: 0, }; }, methods: { add() { this.count++; }, set(value, event) { console.log(event); this.count = value; }, },
多個函數直接用逗號分隔,這里即使是沒有入參的函數,也要加括號,否則不會執行那個函數
比如<div @click="set(0, $event), log">{{ count }}</div> 只會執行set
<div @click="set(0, $event), log()">{{ count }}</div>
data() { return { count: 0, }; }, methods: { add() { this.count++; }, log() { console.log("log---"); }, set(value, event) { console.log(event); this.count = value; }, },
使用修飾符時,順序很重要;相應的代碼會以同樣的順序產生
<!-- 阻止單擊事件繼續傳播 -->
<a @click.stop="doThis"></a><!-- 提交事件不再重載頁面 -->
<form @submit.prevent="onSubmit"></form><!-- 修飾符可以串聯 -->
<a @click.stop.prevent="doThat"></a><!-- 只有修飾符 -->
<form @submit.prevent></form><!-- 添加事件監聽器時使用事件捕獲模式 -->
<!-- 即內部元素觸發的事件先在此處理,然后才交由內部元素進行處理 -->
<div @click.capture="doThis">...</div><!-- 只當在 event.target 是當前元素自身時觸發處理函數 -->
<!-- 即事件不是從內部元素觸發的 -->
<div @click.self="doThat">...</div><!-- 點擊事件將只會觸發一次 能被用到自定義的組件事件上 -->
<a @click.once="doThis"></a><!-- 滾動事件的默認行為 (即滾動行為) 將會立即觸發 -->
<!-- 而不會等待 `onScroll` 完成 -->
<!-- 這其中包含 `event.preventDefault()` 的情況 -->
<!-- 尤其能夠提升移動端的性能 -->
<div @scroll.passive="onScroll">...</div>
.enter
.tab
.delete (捕獲“刪除”和“退格”鍵)
.esc
.space
.up
.down
.left
.right
<!-- 只有在 `key` 是 `Enter` 時調用 `vm.submit()` -->
<input @keyup.enter="submit" /><!-- 只有在 `key` 是 PageDown時調用 `vm.onPageDown()` -->
<input @keyup.page-down="onPageDown" />
事件觸發時修飾鍵必須處于按下狀態
.ctrl
.alt
.shift
.meta
<!-- 按住Alt, 按Enter -->
<input @keyup.alt.enter="clear" /><!-- 按住Ctrl + Click -->
<div @click.ctrl="doSomething">Do something</div>
<!-- 即使 Alt 或 Shift 被一同按下時也會觸發 -->
<button @click.ctrl="onClick">A</button><!-- 有且只有 Ctrl 被按下的時候才觸發 -->
<button @click.ctrl.exact="onCtrlClick">A</button><!-- 沒有任何系統修飾符被按下的時候才觸發 -->
<button @click.exact="onClick">A</button>
<button @click.left="log('left cllilck')">鼠標左擊</button> <button @click.right="log('right cllilck')">鼠標右擊</button> <button @click.middle="log('middle cllilck')">鼠標中擊</button>
到此,相信大家對“VUE入門學習之如何理解事件處理”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。