Options
All
  • Public
  • Public/Protected
  • All
Menu

Class EventEmitter

表示一个事件触发器,支持异步事件

Hierarchy

  • EventEmitter

Index

Methods

Methods

emit

  • emit(eventName: string, ...eventArgs: any[]): Promise<boolean>
  • 触发一个事件,执行已添加的所有事件处理函数

    example

    const events = new EventEmitter() events.on("error", console.log) // 绑定 error 事件 events.emit("error", "hello") // 触发 error 事件,输出 hello

    Parameters

    • eventName: string

      要触发的事件名

    • Rest ...eventArgs: any[]

      传递给事件处理函数的所有参数

    Returns Promise<boolean>

    如果任一个事件处理函数返回 false 则返回 false,否则返回 true

off

  • off(eventName?: string, eventHandler?: Function): this
  • 删除一个或多个事件处理函数

    example

    const events = new EventEmitter() events.on("error", console.log) // 绑定 error 事件 events.off("error", console.log) // 解绑 error 事件 events.emit("error", "hello") // 触发 error 事件,不输出内容

    Parameters

    • Optional eventName: string

      要删除的事件名,如果不传递此参数,则删除所有事件处理函数

    • Optional eventHandler: Function

      要删除的事件处理函数,如果不传递此参数,则删除指定事件的所有处理函数,如果同一个处理函数被添加多次,则只删除第一个

    Returns this

on

  • on(eventName: string, eventHandler: Function): this
  • 添加一个事件处理函数

    example

    const events = new EventEmitter() events.on("error", data => console.log(data)) // 绑定 error 事件 events.emit("error", "hello") // 触发 error 事件,输出 hello

    Parameters

    • eventName: string

      要添加的事件名

    • eventHandler: Function

      要添加的事件处理函数

    Returns this

once

  • once(eventName: string, eventHandler: Function): this
  • 添加一个只执行一次的事件处理函数

    example

    const events = new EventEmitter() events.once("error", data => console.log(data)) // 绑定 error 事件 events.emit("error", "hello") // 触发 error 事件,输出 hello events.emit("error", "hello") // 不触发事件

    Parameters

    • eventName: string

      要添加的事件名

    • eventHandler: Function

      要添加的事件处理函数

    Returns this

Generated using TypeDoc