Class: PubSub<Events>
PubSub 클래스는 이벤트를 생성하고 구독하는 PubSub 패턴을 구현합니다.
ts
const pubsub = new PubSub<{
event1: () => void;
}>();
pubsub.sub('event1', () => console.log('event1 발생'));
pubsub.pub('event1'); // 'event1 발생'
ts
const pubsub = new PubSub<{
점심시간: (food: string) => void;
}>();
pubsub.sub('점심시간', (food: string) => console.log(`${food} 먹을 시간입니다.`));
pubsub.pub('점심시간', ['김치찌개']);
Type parameters
Name | Type |
---|---|
Events | extends Object |
Table of contents
Methods
Methods
pub
▸ pub<EventName
>(event
, args
): void
지정된 이벤트를 생성합니다.
Type parameters
Name | Type |
---|---|
EventName | extends string | number | symbol |
Parameters
Name | Type | Description |
---|---|---|
event | EventName | 생성할 이벤트의 이름입니다. |
args | Parameters <Events [EventName ]> | 이벤트 핸들러에 전달할 인수의 배열입니다. ts pubsub.pub('register', ['홍길동']); |
Returns
void
Defined in
sub
▸ sub<EventName
>(event
, listener
): void
이벤트를 구독합니다.
Type parameters
Name | Type |
---|---|
EventName | extends string | number | symbol |
Parameters
Name | Type | Description |
---|---|---|
event | EventName | 구독할 이벤트의 이름입니다 |
listener | Events [EventName ] | 이벤트가 발생했을 때 실행할 함수입니다. ts pubsub.sub('register', (name: string) => console.log(`${name}님이 입장하셨습니다.`)); |
Returns
void