Skip to content

ECS Framework API v2.2.13


ECS Framework API / EventBus

Class: EventBus

Defined in: packages/core/src/ECS/Core/EventBus.ts:28

增强的事件总线实现 基于TypeSafeEventSystem,提供类型安全的事件发布订阅机制

Implements

Constructors

Constructor

new EventBus(debugMode): EventBus

Defined in: packages/core/src/ECS/Core/EventBus.ts:34

Parameters

debugMode

boolean = false

Returns

EventBus

Methods

emit()

emit<T>(eventType, data, enhance): void

Defined in: packages/core/src/ECS/Core/EventBus.ts:45

发射事件

Type Parameters

T

T

Parameters

eventType

string

事件类型

data

T

事件数据

enhance

boolean = false

是否增强事件数据(添加timestamp、eventId等),默认false提升性能

Returns

void

Implementation of

IEventBus.emit


emitAsync()

emitAsync<T>(eventType, data, enhance): Promise<void>

Defined in: packages/core/src/ECS/Core/EventBus.ts:63

异步发射事件

Type Parameters

T

T

Parameters

eventType

string

事件类型

data

T

事件数据

enhance

boolean = false

是否增强事件数据(添加timestamp、eventId等),默认false提升性能

Returns

Promise<void>

Implementation of

IEventBus.emitAsync


on()

on<T>(eventType, handler, config): string

Defined in: packages/core/src/ECS/Core/EventBus.ts:82

监听事件

Type Parameters

T

T

Parameters

eventType

string

事件类型

handler

(data) => void

事件处理器

config

IEventListenerConfig = {}

监听器配置

Returns

string

监听器ID

Implementation of

IEventBus.on


once()

once<T>(eventType, handler, config): string

Defined in: packages/core/src/ECS/Core/EventBus.ts:113

监听事件(一次性)

Type Parameters

T

T

Parameters

eventType

string

事件类型

handler

(data) => void

事件处理器

config

IEventListenerConfig = {}

监听器配置

Returns

string

监听器ID

Implementation of

IEventBus.once


onAsync()

onAsync<T>(eventType, handler, config): string

Defined in: packages/core/src/ECS/Core/EventBus.ts:128

异步监听事件

Type Parameters

T

T

Parameters

eventType

string

事件类型

handler

(data) => Promise<void>

异步事件处理器

config

IEventListenerConfig = {}

监听器配置

Returns

string

监听器ID

Implementation of

IEventBus.onAsync


off()

off(eventType, listenerId): boolean

Defined in: packages/core/src/ECS/Core/EventBus.ts:141

移除事件监听器

Parameters

eventType

string

事件类型

listenerId

string

监听器ID

Returns

boolean

Implementation of

IEventBus.off


offAll()

offAll(eventType): void

Defined in: packages/core/src/ECS/Core/EventBus.ts:153

移除指定事件类型的所有监听器

Parameters

eventType

string

事件类型

Returns

void

Implementation of

IEventBus.offAll


hasListeners()

hasListeners(eventType): boolean

Defined in: packages/core/src/ECS/Core/EventBus.ts:165

检查是否有指定事件的监听器

Parameters

eventType

string

事件类型

Returns

boolean

Implementation of

IEventBus.hasListeners


getStats()

getStats(eventType?): IEventStats | Map<string, IEventStats>

Defined in: packages/core/src/ECS/Core/EventBus.ts:173

获取事件统计信息

Parameters

eventType?

string

事件类型(可选)

Returns

IEventStats | Map<string, IEventStats>

Implementation of

IEventBus.getStats


clear()

clear(): void

Defined in: packages/core/src/ECS/Core/EventBus.ts:191

清空所有监听器

Returns

void

Implementation of

IEventBus.clear


setEnabled()

setEnabled(enabled): void

Defined in: packages/core/src/ECS/Core/EventBus.ts:203

启用或禁用事件系统

Parameters

enabled

boolean

是否启用

Returns

void


setDebugMode()

setDebugMode(debug): void

Defined in: packages/core/src/ECS/Core/EventBus.ts:211

设置调试模式

Parameters

debug

boolean

是否启用调试

Returns

void


setMaxListeners()

setMaxListeners(max): void

Defined in: packages/core/src/ECS/Core/EventBus.ts:219

设置最大监听器数量

Parameters

max

number

最大数量

Returns

void


getListenerCount()

getListenerCount(eventType): number

Defined in: packages/core/src/ECS/Core/EventBus.ts:227

获取监听器数量

Parameters

eventType

string

事件类型

Returns

number


setBatchConfig()

setBatchConfig(eventType, batchSize, delay): void

Defined in: packages/core/src/ECS/Core/EventBus.ts:237

设置事件批处理配置

Parameters

eventType

string

事件类型

batchSize

number

批处理大小

delay

number

延迟时间(毫秒)

Returns

void


flushBatch()

flushBatch(eventType): void

Defined in: packages/core/src/ECS/Core/EventBus.ts:249

刷新指定事件的批处理队列

Parameters

eventType

string

事件类型

Returns

void


resetStats()

resetStats(eventType?): void

Defined in: packages/core/src/ECS/Core/EventBus.ts:257

重置事件统计

Parameters

eventType?

string

事件类型(可选)

Returns

void


emitEntityCreated()

emitEntityCreated(entityData): void

Defined in: packages/core/src/ECS/Core/EventBus.ts:267

发射实体创建事件

Parameters

entityData

IEntityEventData

实体事件数据

Returns

void


emitEntityDestroyed()

emitEntityDestroyed(entityData): void

Defined in: packages/core/src/ECS/Core/EventBus.ts:275

发射实体销毁事件

Parameters

entityData

IEntityEventData

实体事件数据

Returns

void


emitComponentAdded()

emitComponentAdded(componentData): void

Defined in: packages/core/src/ECS/Core/EventBus.ts:283

发射组件添加事件

Parameters

componentData

IComponentEventData

组件事件数据

Returns

void


emitComponentRemoved()

emitComponentRemoved(componentData): void

Defined in: packages/core/src/ECS/Core/EventBus.ts:291

发射组件移除事件

Parameters

componentData

IComponentEventData

组件事件数据

Returns

void


emitSystemAdded()

emitSystemAdded(systemData): void

Defined in: packages/core/src/ECS/Core/EventBus.ts:299

发射系统添加事件

Parameters

systemData

ISystemEventData

系统事件数据

Returns

void


emitSystemRemoved()

emitSystemRemoved(systemData): void

Defined in: packages/core/src/ECS/Core/EventBus.ts:307

发射系统移除事件

Parameters

systemData

ISystemEventData

系统事件数据

Returns

void


emitSceneChanged()

emitSceneChanged(sceneData): void

Defined in: packages/core/src/ECS/Core/EventBus.ts:315

发射场景变化事件

Parameters

sceneData

ISceneEventData

场景事件数据

Returns

void


emitPerformanceWarning()

emitPerformanceWarning(performanceData): void

Defined in: packages/core/src/ECS/Core/EventBus.ts:323

发射性能警告事件

Parameters

performanceData

IPerformanceEventData

性能事件数据

Returns

void


onEntityCreated()

onEntityCreated(handler, config?): string

Defined in: packages/core/src/ECS/Core/EventBus.ts:334

监听实体创建事件

Parameters

handler

(data) => void

事件处理器

config?

IEventListenerConfig

监听器配置

Returns

string


onComponentAdded()

onComponentAdded(handler, config?): string

Defined in: packages/core/src/ECS/Core/EventBus.ts:346

监听组件添加事件

Parameters

handler

(data) => void

事件处理器

config?

IEventListenerConfig

监听器配置

Returns

string


onSystemError()

onSystemError(handler, config?): string

Defined in: packages/core/src/ECS/Core/EventBus.ts:358

监听系统错误事件

Parameters

handler

(data) => void

事件处理器

config?

IEventListenerConfig

监听器配置

Returns

string


onPerformanceWarning()

onPerformanceWarning(handler, config?): string

Defined in: packages/core/src/ECS/Core/EventBus.ts:370

监听性能警告事件

Parameters

handler

(data) => void

事件处理器

config?

IEventListenerConfig

监听器配置

Returns

string

Released under the MIT License.