Vant3 useEventListener

2021-09-07 17:26 更新

介紹

方便地進(jìn)行事件綁定,在組件 mounted 和 activated 時(shí)綁定事件,unmounted 和 deactivated 時(shí)解綁事件。

代碼演示

基本用法

import { ref } from 'vue';
import { useEventListener } from '@vant/use';

export default {
  setup() {
    // 在 window 上綁定 resize 事件
    // 未指定監(jiān)聽(tīng)對(duì)象時(shí),默認(rèn)會(huì)監(jiān)聽(tīng) window 的事件
    useEventListener('resize', () => {
      console.log('window resize');
    });

    // 在 body 元素上綁定 click 事件
    useEventListener(
      'click',
      () => {
        console.log('click body');
      },
      { target: document.body }
    );
  },
};

類(lèi)型定義

type Options = {
  target?: EventTarget | Ref<EventTarget>;
  capture?: boolean;
  passive?: boolean;
};

function useEventListener(
  type: string,
  listener: EventListener,
  options?: Options
): void;

API

參數(shù)

參數(shù) 說(shuō)明 類(lèi)型 默認(rèn)值
type 監(jiān)聽(tīng)的事件類(lèi)型 string -
listener 點(diǎn)擊外部時(shí)觸發(fā)的回調(diào)函數(shù) EventListener -
options 可選的配置項(xiàng) Options -

Options

參數(shù) 說(shuō)明 類(lèi)型 默認(rèn)值
target 綁定事件的元素 EventTarget | Ref<EventTarget> window
capture 是否在事件捕獲階段觸發(fā) boolean false
passive 設(shè)置為 true 時(shí),表示 listener 永遠(yuǎn)不會(huì)調(diào)用 preventDefault boolean false


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)