最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue中的事件修飾符介紹和示例

 更新時(shí)間:2023年04月22日 10:15:34   作者:upward_tomato  
在Vue中,修飾符處理了許多DOM事件的細(xì)節(jié),讓我們不再需要花大量的時(shí)間去處理這些煩惱的事情,而能有更多的精力專注于程序的邏輯處理,需要的朋友可以參考下

最近使用到 vue 的事件修飾符,快速的過一下 vue 中的事件修飾符

1. 官方文檔

vue2 v-on 點(diǎn)擊這里

vue3 v-on 點(diǎn)擊這里

vue2中有關(guān) v-on 的介紹

在這里插入圖片描述

vue3中有關(guān) v-on 的介紹

在這里插入圖片描述

初步看下來,vue2 和 Vue3 中修飾符差距并不大。

2. 說明+實(shí)例

2.1 .stop

.stop 修飾符的作用是阻止冒泡

<template>
  <div @click="handleClick(2)">
    <button @click.stop="handleClick(1)">點(diǎn)擊</button>
  </div>
</template>

<script>
export default {
  data() {
    return {};
  },
  methods: {
    handleClick(key) {
      console.log('你好', key);
    },
  },
};
</script>

js 中事件默認(rèn)是由內(nèi)向外層冒泡傳遞的。正常情況下點(diǎn)擊按鈕會(huì)依次打印 1,2。當(dāng)我們并不想觸發(fā)外層的事件時(shí),我們可以用 .stop 阻止冒泡。

對(duì)應(yīng)源碼使用的是 $event.stopPropagation() 實(shí)現(xiàn)此功能

2.2 .prevent

.prevent 修飾符的作用是阻止默認(rèn)事件

<template>
  <div>
    <a href="#" rel="external nofollow"  @click.prevent="handleClick(1)">點(diǎn)我</a>
  </div>
</template>

<script>
export default {
  data() {
    return {};
  },
  methods: {
    handleClick(key) {
      console.log('你好', key);
    },
  },
};
</script>

html 某些元素自帶一些默認(rèn)的事件,例如常見的:from 表單的提交;a 標(biāo)簽的跳轉(zhuǎn);如果想禁用這些時(shí)間,就可以使用 .prevent 修飾符。

對(duì)應(yīng)源碼使用的是 event.preventDefault() 實(shí)現(xiàn)此功能

2.3 .capture

事件默認(rèn)是由里往外冒泡,.capture 修飾符的作用是,由外部向內(nèi)進(jìn)行捕獲

<template>
  <div @click.capture="handleClick(2)">
    <button @click="handleClick(1)">點(diǎn)擊</button>
  </div>
</template>

<script>
export default {
  data() {
    return {};
  },
  methods: {
    handleClick(key) {
      console.log('你好', key);
    },
  },
};
</script>

此處會(huì)先打印 2,再打印 1。

對(duì)應(yīng) js 原生中修改事件是,冒泡還是捕獲,dom.addEventListener(eventName,fn,capture)。第三個(gè)參數(shù)默認(rèn)是 false,及冒泡。如果為 true,及捕獲。capture 英譯 :捕獲。

2.4 {keyCode | keyAlias}

當(dāng)需要對(duì)鍵盤按鈕做處理的時(shí)候,比如 keydown, keyup。如果想針對(duì)特定的某些按鈕進(jìn)行監(jiān)聽,可以添加修飾符,例如:

.enter
.tab
.delete (捕獲“刪除”和“退格”鍵)
.esc
.space
.up
.down
.left
.right

常見的按鍵碼 官方文檔對(duì)按鍵碼的介紹

2.5 .native

.native 修飾符是加在自定義組件的事件上,保證事件能執(zhí)行.

// 執(zhí)行不了
<My-component @click="shout(3)"></My-component>

// 可以執(zhí)行
<My-component @click.native="shout(3)"></My-component>

2.6 .once

.once修飾符的作用是,事件只執(zhí)行一次

<button  @click.once="handleClick($event)">
  按鈕
</button>

2.7 .left .right .middle

.left .middle .right 這三個(gè)修飾符分別是鼠標(biāo)的左中右按鍵觸發(fā)的事件

2.8 .passive

當(dāng)我們?cè)诒O(jiān)聽元素滾動(dòng)事件的時(shí)候,會(huì)一直觸發(fā) onscroll 事件,在 pc 端是沒啥問題的,但是在移動(dòng)端,會(huì)讓我們的網(wǎng)頁(yè)變卡,因此我們使用這個(gè)修飾符的時(shí)候,相當(dāng)于給對(duì)移動(dòng)端的滾動(dòng)做一些優(yōu)化。

<div @scroll.passive="onScroll">...</div>

End

事件修飾符底層還是基于 js 實(shí)現(xiàn)的。當(dāng)然 vue 也還是基于 js 的封裝。事件修飾符不難,暫時(shí)記住這么幾種即可。就我目前接觸到的情況來說,元素的原生事件在某些關(guān)鍵時(shí)刻有奇效,但是也會(huì)發(fā)生很奇特的 bug。

到此這篇關(guān)于vue中的事件修飾符介紹和示例的文章就介紹到這了,更多相關(guān)vue事件修飾符內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue實(shí)現(xiàn)帶參數(shù)的自定義指令示例

    Vue實(shí)現(xiàn)帶參數(shù)的自定義指令示例

    這篇文章主要為大家介紹了Vue實(shí)現(xiàn)帶參數(shù)的自定義指令示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • 使用proxy實(shí)現(xiàn)一個(gè)更優(yōu)雅的vue【推薦】

    使用proxy實(shí)現(xiàn)一個(gè)更優(yōu)雅的vue【推薦】

    Proxy 用于修改某些操作的默認(rèn)行為,等同于在語言層面做出修改,所以屬于一種“元編程”。這篇文章主要介紹了用proxy實(shí)現(xiàn)一個(gè)更優(yōu)雅的vue,需要的朋友可以參考下
    2018-06-06
  • 基于better-scroll 實(shí)現(xiàn)歌詞聯(lián)動(dòng)功能的代碼

    基于better-scroll 實(shí)現(xiàn)歌詞聯(lián)動(dòng)功能的代碼

    BetterScroll 是一款重點(diǎn)解決移動(dòng)端(已支持 PC)各種滾動(dòng)場(chǎng)景需求的插件,BetterScroll 是使用純 JavaScript 實(shí)現(xiàn)的,這意味著它是無依賴的。本文基于better-scroll 實(shí)現(xiàn)歌詞聯(lián)動(dòng)功能,感興趣的朋友跟隨小編一起看看吧
    2020-05-05
  • 解析vue、angular深度作用選擇器

    解析vue、angular深度作用選擇器

    在 Vue 的開發(fā)中,我們經(jīng)常會(huì)用到外部組件庫(kù),這篇文章主要介紹了vue、angular深度作用選擇器,需要的朋友可以參考下
    2019-09-09
  • vue中$set的使用(結(jié)合在實(shí)際應(yīng)用中遇到的坑)

    vue中$set的使用(結(jié)合在實(shí)際應(yīng)用中遇到的坑)

    這篇文章主要介紹了vue中$set的使用(結(jié)合在實(shí)際應(yīng)用中遇到的坑),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-07-07
  • vue-cli中的:visible.sync是什么意思

    vue-cli中的:visible.sync是什么意思

    visible前面加冒號(hào)的,說明后面是一個(gè)變量或者表達(dá)式;沒加冒號(hào)的后面就是對(duì)應(yīng)的字符串字面量,這篇文章主要介紹了vue-cli中的:visible.sync是什么,需要的朋友可以參考下
    2022-11-11
  • Vue生命周期與后端交互實(shí)現(xiàn)流程詳解

    Vue生命周期與后端交互實(shí)現(xiàn)流程詳解

    Vue的生命周期就是vue實(shí)例從創(chuàng)建到銷毀的全過程,也就是new Vue()開始就是vue生命周期的開始。Vue實(shí)例有?個(gè)完整的?命周期,也就是從開始創(chuàng)建、初始化數(shù)據(jù)、編譯模版、掛載Dom->渲染、更新->渲染、卸載等?系列過程,稱這是Vue的?命周期
    2022-11-11
  • vue通知提醒消息舉例詳解

    vue通知提醒消息舉例詳解

    在項(xiàng)目開發(fā)過程中,可能需要實(shí)現(xiàn)以下場(chǎng)景,未讀消息提示、報(bào)警信息、消息通知等,下面這篇文章主要給大家介紹了關(guān)于vue通知提醒消息的相關(guān)資料,需要的朋友可以參考下
    2023-03-03
  • vue中mint-ui環(huán)境搭建詳細(xì)介紹

    vue中mint-ui環(huán)境搭建詳細(xì)介紹

    這篇文章主要介紹了vue中mint-ui環(huán)境搭建詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • 簡(jiǎn)單了解vue中父子組件如何相互傳遞值(基礎(chǔ)向)

    簡(jiǎn)單了解vue中父子組件如何相互傳遞值(基礎(chǔ)向)

    這篇文章主要介紹了簡(jiǎn)單了解vue中父子組件如何相互傳遞值(基礎(chǔ)向),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07

最新評(píng)論

于田县| 黄石市| 喜德县| 锦屏县| 沈阳市| 桐乡市| 綦江县| 浪卡子县| 绥化市| 新乡市| 南华县| 会泽县| 武川县| 潮州市| 福安市| 蒙阴县| 满洲里市| 遂川县| 连云港市| 皮山县| 马关县| 紫金县| 扶余县| 当雄县| 大洼县| 若尔盖县| 涿州市| 顺平县| 潼关县| 平邑县| 泸州市| 孝义市| 池州市| 凌云县| 栾城县| 忻州市| 乐清市| 蒲江县| 阳高县| 溧阳市| 新泰市|