vue中的事件修飾符


 vue提倡的是在方法中只有對數據的處理,所以提供了事件修飾符用於DOM的事件處理,常用的事件修飾符有以下幾個:

(1). stop:阻止冒泡(通俗講就是阻止事件向上級DOM元素傳遞)

    

  點擊內層div的結果:

    

  點擊外層div的結果:

    

  修改代碼,為內層點擊事件添加事件".stop"修飾符:

    

  再次點擊內層div的結果如下:

    

(2). prevent:阻止默認事件的發生

  默認事件指對DOM的操作會引起自動執行的動作,比如點擊超鏈接的時候會進行頁面的跳轉,點擊表單提交按鈕時會重新加載頁面等,使用".prevent"修飾符可以阻止這些事件的發生。
    
       此時點擊超鏈接不會進行頁面的跳轉。

(3). capture:捕獲冒泡,即有冒泡發生時,有該修飾符的dom元素會先執行,如果有多個,從外到內依次執行,然后再按自然順序執行觸發的事件。


    


        此時點擊最內層div,結果如下:


    


        多個獲取事件 :
    

            點擊最內層結果:


    


    (4). self:將事件綁定到自身,只有自身才能觸發,通常用於避免冒泡事件的影響

             
                此時點擊最內層:

            


    (5). once:設置事件只能觸發一次,比如按鈕的點擊等。

    (6). passive:該修飾符大概意思用於對DOM的默認事件進行性能優化,根據官網的例子比如超出最大范圍的滾動條滾動的。

  (7). native:在父組件中給子組件綁定一個原生的事件,就將子組件變成了普通的HTML標簽,不加'. native'事件是無法觸 發的。

    

     此時點擊頁面中的按鈕無任何反應。

     添加修飾符:

    

    此時點擊就會彈窗:

    

  可以理解為該修飾符的作用就是把一個vue組件轉化為一個普通的HTML標簽,並且該修飾符對普通HTML標簽是沒有任何作用的。

 

 

可參考官方文檔:https://cn.vuejs.org/v2/guide/events.html#%E4%BA%8B%E4%BB%B6%E4%BF%AE%E9%A5%B0%E7%AC%A6



 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM