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()的形式输出对应的消息内容和数据。