微信小程序

EventManager

xr-frame / Exports / EventManager

# Class: EventManager

事件管理器。

每个Element都有自己的事件管理器,通过参数可以触发到xml

# Table of contents

# Constructors

  • constructor

# Properties

  • isEventManager

# Methods

  • add
  • addOnce
  • clear
  • flush
  • flushAll
  • has
  • remove
  • trigger

# Constructors

# constructor

new EventManager(_el, _triggerElementEvent)

# Parameters
Name Type
_el Element
_triggerElementEvent TFrameworkEventTrigger

# Properties

# isEventManager

isEventManager: boolean = true

# Methods

# add

add<TEvent>(type, callback, priority?): EventManager

添加一个事件监听器。

# Type parameters
Name Type
TEvent any
# Parameters
Name Type
type string
callback TEventCallback<TEvent>
priority? number
# Returns

EventManager

# addOnce

addOnce<TEvent>(type, callback, priority?): EventManager

添加一个事件监听器,触发一次后自动移除。

# Type parameters
Name Type
TEvent any
# Parameters
Name Type
type string
callback TEventCallback<TEvent>
priority? number
# Returns

EventManager

# clear

clear(type): EventManager

清空某事件的所有监听器。

# Parameters
Name Type
type string
# Returns

EventManager

# flush

flush(type): EventManager

分发某个缓存的事件,一般不需要自行触发。

# Parameters
Name Type
type string
# Returns

EventManager

# flushAll

flushAll(): EventManager

分发所有缓存的事件,一般不需要自行触发。

# Returns

EventManager

# has

has(type): boolean

判断一个事件是否被注册。 注册是指用户绑定过了至少一个事件处理器,无论是来自于wxml还是JS。

# Parameters
Name Type
type string
# Returns

boolean

# remove

remove<TEvent>(type, callback): EventManager

移除一个事件监听器。

# Type parameters
Name Type
TEvent any
# Parameters
Name Type
type string
callback TEventCallback<TEvent>
# Returns

EventManager

# trigger

trigger<TEvent>(type, event?, immediately?, toXML?, bubbles?): EventManager

触发一个事件。

# Type parameters
Name Type
TEvent any
# Parameters
Name Type Default value Description
type string undefined 要触发的事件类型。
event? TEvent undefined 事件的值。
immediately boolean true 是否要将事件立即分发,如果不则会先缓存,之后在每一帧更新前统一分发,避免不必要的分发。
toXML boolean true 是否要派发到xml绑定的事件中。
bubbles boolean false 是否要进行事件冒泡。
# Returns

EventManager