中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Vue中v-on指令怎么用

發布時間:2021-10-27 09:11:16 來源:億速云 閱讀:135 作者:小新 欄目:開發技術

這篇文章主要為大家展示了“Vue中v-on指令怎么用”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Vue中v-on指令怎么用”這篇文章吧。

1、監聽事件

可以用 v-on 指令監聽 DOM 事件,并在觸發時運行一些 JavaScript 代碼。事件代碼可以直接放到v-on后面,也可以寫成一個函數。

示例代碼如下:

<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參數

如果在事件處理函數中,想要獲取原生的DOM事件,那么在html代碼中,調用的時候,可以傳遞一個$event參數。

示例代碼如下:

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

3、事件修飾符

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

為了解決這個問題,Vue.js v-on 提供了事件修飾符。之前提過,修飾符是由點開頭的指令后綴來表示的。

  • .stop:event.stopPropagation,阻止事件冒泡。

  • .prevent:event.preventDefault,阻止默認行為

  • .capture:事件捕獲。

  • .self:代表當前這個被點擊的元素自身。

  • .once:這個事件只執行一次。

  • .passive:在頁面滾動的時候告訴瀏覽器不會阻止默認的行為,從而讓滾動更加順暢。

案例1:阻止單擊事件繼續傳播

<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:提交事件不再重載頁面

<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>

以上是最標準的提交數據的代碼,提交完后會自動跳轉到百度,但是現在有個需求,我們希望輸入完數據后,不會自動跳轉到百度,而是通過自己的方法,先處理數據,處理完后,自己指定頁面跳轉,

代碼如下:

<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綁定了一個點擊事件,并使用.prevent阻止了他的默認行為

以上是“Vue中v-on指令怎么用”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

vue
AI

新津县| 贵州省| 罗平县| 陆河县| 台北县| 大同市| 遵义市| 绵竹市| 通辽市| 香格里拉县| 墨脱县| 长泰县| 和平区| 连城县| 罗定市| 花莲县| 五河县| 钦州市| 汉中市| 旬邑县| 手游| 东乡| 五大连池市| 临夏市| 龙陵县| 渭南市| 雅江县| 石阡县| 德阳市| 灵宝市| 绥芬河市| 诸暨市| 扎鲁特旗| 连城县| 汪清县| 乡宁县| 盐边县| 南汇区| 乡城县| 灌南县| 广东省|