Vue 中的 $on(native) 方法用于監(jiān)聽原生 DOM 事件,包括瀏覽器支持的標準事件和自定義事件。$on 方法需要傳入兩個參數(shù),第一個參數(shù)是事件的名稱,第二個參數(shù)是事件回調(diào)函數(shù)。
// 示例代碼 this.$on('click', handleClick) function handleClick (event) { console.log(event.target) }
通過上述示例代碼,可以看出 $on 方法可以將指定名稱的事件綁定到當前實例上,并指定要執(zhí)行的回調(diào)函數(shù)。$on 方法會返回當前實例,因此可以實現(xiàn)鏈式調(diào)用。
需要注意的是,在使用 $on 方法時,需要確保元素已經(jīng)被渲染到頁面上??梢栽?mounted 鉤子函數(shù)中使用 $nextTick 方法,等到 DOM 元素渲染完畢后再進行事件綁定。同時,如果需要移除事件監(jiān)聽,可以通過 $off 方法來實現(xiàn)。
// 示例代碼 mounted: function () { this.$nextTick(function () { this.$on('click', handleClick) }) }, beforeDestroy: function () { this.$off('click', handleClick) },
在實際開發(fā)中,使用 $on 方法可以方便地監(jiān)聽原生 DOM 事件,快速響應用戶操作,并進行相應的處理。