dispatch()
是Yuka js库中的一个方法,用于派发消息给所有已注册的监听器。
MessageDispatcher.dispatch( message );
message
:要派发的消息,需为一个Object类型。
type
:消息类型,通常为字符串类型。
data
:消息携带的数据,可为任意类型。
无返回值。
// 注册事件监听器
MessageDispatcher.register( 'hit', ( message ) => {
console.log( '接收到hit消息,数据为:', message.data );
});
// 派发消息
MessageDispatcher.dispatch({
type: 'hit',
data: {
damage: 50
}
});
// 输出:
// 接收到hit消息,数据为: { damage: 50 }
在此示例中,我们首先通过register()
方法注册了一个名为hit
的事件监听器,并指定其处理函数为一个简单的console.log()
语句。
然后,我们调用了dispatch()
方法,向所有已注册的hit
事件监听器派发了一条名为hit
,数据为{ damage: 50 }
的消息。
由于我们之前已经注册了一个处理函数,故控制台会以console.log()
的形式输出对应的消息内容和数据。