欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

關(guān)于Vue v-on指令的使用

 更新時(shí)間:2021年10月26日 16:34:26   作者:Silent丿丶黑羽  
這篇文章主要介紹了關(guān)于Vue v-on指令的一些使用場(chǎng)景,比如監(jiān)聽(tīng)事件、傳入event參數(shù)、事件修飾符的一些場(chǎng)景,下面就來(lái)看看具體使用的方法吧,需要的朋友可以參考一下

1、監(jiān)聽(tīng)事件

可以用 v-on 指令監(jiān)聽(tīng) DOM 事件,并在觸發(fā)時(shí)運(yùn)行一些 JavaScript 代碼。事件代碼可以直接放到v-on后面,也可以寫(xiě)成一個(gè)函數(shù)。

示例代碼如下:

<div id="app">
  <p>{{counter}}</p>
  <button @click="counter += 1">+1</button>
  <button @click="subtract(10)">-10</button>
</div>
<script>
  const app = new Vue({
    el: "#app",
    data: {
      counter: 0
    },
    methods: {
      subtract(value){
        this.counter-=value
      }
    }
  })
</script>
 

2、傳入event參數(shù)

如果在事件處理函數(shù)中,想要獲取原生的DOM事件,那么在html代碼中,調(diào)用的時(shí)候,可以傳遞一個(gè)$event參數(shù)。

示例代碼如下:

<button v-on:click="subtract(10,$event)">減10</button>
...
<script>
...
methods: {
    subtract: function(value,event){
        this.count -= value;
        console.log(event);
    }
}
...
</script>
 

3、事件修飾符

在事件處理程序中調(diào)用 event.preventDefault() event.stopPropagation() 是非常常見(jiàn)的需求。盡管我們可以在方法中輕松實(shí)現(xiàn)這點(diǎn),但更好的方式是:方法只有純粹的數(shù)據(jù)邏輯,而不是去處理 DOM 事件細(xì)節(jié)。

為了解決這個(gè)問(wèn)題,Vue.js v-on 提供了事件修飾符。之前提過(guò),修飾符是由點(diǎn)開(kāi)頭的指令后綴來(lái)表示的。

  • .stop:event.stopPropagation,阻止事件冒泡。
  • .prevent:event.preventDefault,阻止默認(rèn)行為
  • .capture:事件捕獲。
  • .self:代表當(dāng)前這個(gè)被點(diǎn)擊的元素自身。
  • .once:這個(gè)事件只執(zhí)行一次。
  • .passive:在頁(yè)面滾動(dòng)的時(shí)候告訴瀏覽器不會(huì)阻止默認(rèn)的行為,從而讓滾動(dòng)更加順暢。

案例1:阻止單擊事件繼續(xù)傳播

<div id="app">
  <div @click="divClick">
    1111
    <button @click.stop="btnClick">按鈕</button>
  </div>
</div>
<script>
  let app = new Vue({
    el: "#app",
    data: {
      count: 0
    },
    methods: {
      divClick(){
        console.log("divClick")
      },
      btnClick(){
        console.log("btnClick")
      }
    }
  });
</script>

案例2:提交事件不再重載頁(yè)面

<div id="app">
  <form action="">
    <label>
      <input type="text">
    </label>
    <label>
      <input type="submit" value="提交">
    </label>
  </form>
</div>
<script>
  const app = new Vue({
    el: "#app",
    data: {
    }
  })
</script>

以上是最標(biāo)準(zhǔn)的提交數(shù)據(jù)的代碼,提交完后會(huì)自動(dòng)跳轉(zhuǎn)到百度,但是現(xiàn)在有個(gè)需求,我們希望輸入完數(shù)據(jù)后,不會(huì)自動(dòng)跳轉(zhuǎn)到百度,而是通過(guò)自己的方法,先處理數(shù)據(jù),處理完后,自己指定頁(yè)面跳轉(zhuǎn),

代碼如下:

<div id="app">
  <form action="https://www.baidu.com">
    <label>
      <input type="text">
    </label>
    <label>
      <input type="submit" value="提交" @click.prevent="testClick">
    </label>
  </form>
</div>
<script>
  const app = new Vue({
    el: "#app",
    methods: {
      testClick(){
      }
    }
  })
</script>

這里我們給submit綁定了一個(gè)點(diǎn)擊事件,并使用.prevent阻止了他的默認(rèn)行為

到此這篇關(guān)于關(guān)于Vue v-on指令的使用 的文章就介紹到這了,更多相關(guān)Vue v-on指令內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 如何在基于vue-cli的項(xiàng)目自定義打包環(huán)境

    如何在基于vue-cli的項(xiàng)目自定義打包環(huán)境

    本篇文章主要介紹了在基于vue-cli的項(xiàng)目自定義打包環(huán)境,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-11-11
  • vue3 provide與inject的使用小技巧分享

    vue3 provide與inject的使用小技巧分享

    這篇文章主要介紹了vue3 provide與inject的使用小技巧,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • vue.js使用v-model實(shí)現(xiàn)表單元素(input) 雙向數(shù)據(jù)綁定功能示例

    vue.js使用v-model實(shí)現(xiàn)表單元素(input) 雙向數(shù)據(jù)綁定功能示例

    這篇文章主要介紹了vue.js使用v-model實(shí)現(xiàn)表單元素(input) 雙向數(shù)據(jù)綁定功能,結(jié)合完整實(shí)例形式分析了v-model實(shí)現(xiàn)表單input元素?cái)?shù)據(jù)雙向綁定相關(guān)操作技巧,需要的朋友可以參考下
    2019-03-03
  • 詳解關(guān)于vue2.0工程發(fā)布上線操作步驟

    詳解關(guān)于vue2.0工程發(fā)布上線操作步驟

    這篇文章主要介紹了詳解關(guān)于vue2.0工程發(fā)布上線操作步驟,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-09-09
  • vue引入ueditor及node后臺(tái)配置詳解

    vue引入ueditor及node后臺(tái)配置詳解

    這篇文章主要介紹了vue引入ueditor及node后臺(tái)配置詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-01-01
  • 使用vue制作FullPage頁(yè)面滾動(dòng)效果

    使用vue制作FullPage頁(yè)面滾動(dòng)效果

    本篇文章主要介紹了使用vue制作FullPage頁(yè)面滾動(dòng)效果,詳細(xì)的介紹了FullPage頁(yè)面的思路和實(shí)現(xiàn),有興趣的可以了解一下
    2017-08-08
  • 解決vue 界面在蘋(píng)果手機(jī)上滑動(dòng)點(diǎn)擊事件等卡頓問(wèn)題

    解決vue 界面在蘋(píng)果手機(jī)上滑動(dòng)點(diǎn)擊事件等卡頓問(wèn)題

    這篇文章主要介紹了vue 界面在蘋(píng)果手機(jī)上滑動(dòng)點(diǎn)擊事件等卡頓解決方案,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-11-11
  • 在vue里如何使用pug模板引擎

    在vue里如何使用pug模板引擎

    這篇文章主要介紹了在vue里如何使用pug模板引擎,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • Vue刷新后頁(yè)面數(shù)據(jù)丟失問(wèn)題的解決過(guò)程

    Vue刷新后頁(yè)面數(shù)據(jù)丟失問(wèn)題的解決過(guò)程

    在做vue項(xiàng)目的過(guò)程中有時(shí)候會(huì)遇到一個(gè)問(wèn)題,就是進(jìn)行F5頁(yè)面刷新的時(shí)候,頁(yè)面的數(shù)據(jù)會(huì)丟失,這篇文章主要給大家介紹了關(guān)于Vue刷新后頁(yè)面數(shù)據(jù)丟失問(wèn)題的解決過(guò)程,需要的朋友可以參考下
    2022-11-11
  • vue中如何防止用戶頻繁點(diǎn)擊按鈕詳解

    vue中如何防止用戶頻繁點(diǎn)擊按鈕詳解

    在后臺(tái)使用過(guò)程中經(jīng)常會(huì)因?yàn)榘粹o重復(fù)點(diǎn)擊,而造成發(fā)送多次重復(fù)請(qǐng)求 以下方法可以避免這種情況,下面這篇文章主要給大家介紹了關(guān)于vue中如何防止用戶頻繁點(diǎn)擊按鈕的相關(guān)資料,需要的朋友可以參考下
    2022-09-09

最新評(píng)論