91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

vue中的addEventListener和removeEventListener怎么使用

發布時間:2022-07-02 13:58:29 來源:億速云 閱讀:825 作者:iii 欄目:開發技術

本篇內容介紹了“vue中的addEventListener和removeEventListener怎么使用”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

addEventListener和removeEventListener用法說明

1、添加監聽事件(addEventListener)

語法:element.addEventListener(event, function, useCapture)

  • event:指定事件名(注意: 不要使用 "on" 前綴。 例如,使用 "click" ,而不是使用 "onclick")

  • function:指定要事件觸發時執行的函數(事件對象會作為第一個參數傳入函數)

  • useCapture:指定事件是否在捕獲或冒泡階段執行,默認false(true - 事件句柄在捕獲階段執行,false-事件句柄在冒泡階段執行)

mounted() {
    window.addEventListener("resize", this.setNavLeft);
},
methods: {
    listenerFunction(e) {
      document.addEventListener("scroll", this.handleScroll, true);
    },
}

2、移出監聽事件(removeEventListener)

語法:element.removeEventListener(event, function, useCapture)

注意:在vue中銷毀事件監聽,一定要在destroyed生命周期中執行,在 beforeDestroy到destroyed之間,執行組件事件拆卸,在beforeDestroy中執行事件銷毀是成功不了的

destroyed() {
    document.removeEventListener("scroll", this.handleScroll, true);
    window.removeEventListener("resize", this.setNavLeft);
  },

使用addEventListener添加事件、removeEventListener移除事件

最近在項目中需要用到addEventListener監聽滾動條滾動的高度,所以就研究了一下在vue中是怎么進行事件監聽的。

添加事件

給要添加事件的元素加上ref屬性

vue中的addEventListener和removeEventListener怎么使用

在mounted中添加事件

    mounted() {
      this.$refs.box.addEventListener('scroll',()=>{
        console.log('scroll',this.$refs.box.scrollTop)
      });
    }

這樣就添加成功了!

vue中的addEventListener和removeEventListener怎么使用

移除事件

如果要移除已添加的事件,removeEventListener中傳入的方法必須和addEventListener中傳入的是同一個方法才能成功移除,所以在添加時就不能用匿名函數啦。需改成如下寫法

    mounted() {
      this.$refs.box.addEventListener('scroll',this.scrollEvent);
    },
    methods:{
      scrollEvent(){
        console.log('scroll',this.$refs.box.scrollTop)
      }
    }

這里要注意 傳入的方法 this.scrollEvent 后面不能加括號,否則無法成功添加

組件銷毀前移除事件

    beforeDestroy() {
      this.$refs.box.removeEventListener('scroll',this.scrollEvent);
    }

如果是keep-alive組件,可以用下面這種方式

  activated() {
    this.$refs.box.addEventListener('scroll', this.scrollEvent);
  },
  deactivated(){
    this.$refs.box.removeEventListener('scroll',this.scrollEvent);
  },

“vue中的addEventListener和removeEventListener怎么使用”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

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

AI

滦平县| 吕梁市| 房产| 眉山市| 宿迁市| 绥阳县| 德保县| 隆昌县| 景宁| 富平县| 浦北县| 德昌县| 郴州市| 淳安县| 师宗县| 文成县| 岐山县| 屏南县| 梁河县| 察哈| 郯城县| 民勤县| 新余市| 齐河县| 牟定县| 错那县| 玉田县| 临泉县| 沁阳市| 南雄市| 桂东县| 丰顺县| 民县| 静安区| 高碑店市| 珲春市| 锡林郭勒盟| 册亨县| 清新县| 乌拉特前旗| 银川市|