The context class for event operations. You can use as it is or inherit any classes in this class.
const dv = new EV();
// or...
class SomeClass extends EV {}When using it with TypeScript, it is possible to strictly set type information by specifying an interface in Generics.
class SomeClass extends EV<{event1: string, event2: boolean}> {
  constructor() {
    super();
    this.emit('event1', 5); // ng
    this.emit('event1', 'string'); // ok
    this.on('event2', event => {
      const var1: string = event; // ng
      const var2: boolean = event; // ok
    });
  }
}<K extends keyof EventMap>(type: K, handler: (ev: EventMap[K]) => any): EVListenerCreate and return listener instance by type, handler.
| Name | Type | Default | 
|---|---|---|
| type* | K | |
| event type | ||
| handler* | (ev: EventMap[K]) => any | |
| event handler | ||
EVListenerCreate and return listener instance by type, handler.
<K extends keyof EventMap>(type: K, handler: (ev: EventMap[K]) => any, option?: { tag?: EVListenerTag; once?: boolean; }): EVListenerCreate and return listener instance by type, handler, option.
| Name | Type | Default | 
|---|---|---|
| type* | K | |
| event type | ||
| handler* | (ev: EventMap[K]) => any | |
| event handler | ||
| option | { tag?: EVListenerTag; once?: boolean; } | undefined | |
| object option | ||
EVListenerCreate and return listener instance by type, handler, option.
<K extends keyof EventMap>(type: K, handler: (ev: EventMap[K]) => any, option?: { tag?: EVListenerTag; once?: boolean; }): EVListenerCreate and return listener instance by type, handler, option.
| Name | Type | Default | 
|---|---|---|
| type* | K | |
| event type | ||
| handler* | (ev: EventMap[K]) => any | |
| event handler | ||
| option | { tag?: EVListenerTag; once?: boolean; } | undefined | |
| object option | ||
EVListenerCreate and return listener instance by type, handler, option.
<K extends keyof EventMap>(type: K, handler: (ev: EventMap[K]) => any, option?: { tag?: EVListenerTag; }, once?: boolean): EVListenerCreate and return listener instance by type, handler, once.
| Name | Type | Default | 
|---|---|---|
| type* | K | |
| event type | ||
| handler* | (ev: EventMap[K]) => any | |
| event handler | ||
| option | { tag?: EVListenerTag; } | undefined | |
| object option | ||
| once | boolean | undefined | |
| Delete handler with one event firing | ||
EVListenerCreate and return listener instance by type, handler, once.
<K extends keyof EventMap>(type: K, option?: { handler: (ev: EventMap[K]) => any; tag?: EVListenerTag; once?: boolean; }): EVListenerCreate and return listener instance by type, option.
| Name | Type | Default | 
|---|---|---|
| type* | K | |
| event type | ||
| option | { handler: (ev: EventMap[K]) => any; tag?: EVListenerTag; once?: boolean; } | undefined | |
| object option | ||
EVListenerCreate and return listener instance by type, option.
<K extends keyof EventMap>(option: { type: K; handler: (ev: EventMap[K]) => any; tag?: EVListenerTag; once?: boolean; }): EVListenerCreate and return listener instance by option.
| Name | Type | Default | 
|---|---|---|
| option* | { type: K; handler: (ev: EventMap[K]) => any; tag?: EVListenerTag; once?: boolean; } | |
| object option | ||
EVListenerCreate and return listener instance by option.
<K extends keyof EventMap>(type: K, handler: (ev: EventMap[K]) => any): EVListenerCreate and return listener instance by type, handler. This listener is deleted when it detects an event only once.
| Name | Type | Default | 
|---|---|---|
| type* | K | |
| event type | ||
| handler* | (ev: EventMap[K]) => any | |
| event handler | ||
EVListenerCreate and return listener instance by type, handler. This listener is deleted when it detects an event only once.
<K extends keyof EventMap>(type: K, handler: (ev: EventMap[K]) => any, option: { tag?: EVListenerTag; }): EVListenerCreate and return listener instance by type, handler, option. This listener is deleted when it detects an event only once.
| Name | Type | Default | 
|---|---|---|
| type* | K | |
| event type | ||
| handler* | (ev: EventMap[K]) => any | |
| event handler | ||
| option* | { tag?: EVListenerTag; } | |
| object option | ||
EVListenerCreate and return listener instance by type, handler, option. This listener is deleted when it detects an event only once.
<K extends keyof EventMap>(type: K, option: { handler: (ev: EventMap[K]) => any; tag?: EVListenerTag; }): EVListenerCreate and return listener instance by type, option. This listener is deleted when it detects an event only once.
| Name | Type | Default | 
|---|---|---|
| type* | K | |
| event type | ||
| option* | { handler: (ev: EventMap[K]) => any; tag?: EVListenerTag; } | |
| object option | ||
EVListenerCreate and return listener instance by type, option. This listener is deleted when it detects an event only once.
<K extends keyof EventMap>(option: { type: K; handler: (ev: EventMap[K]) => any; tag?: EVListenerTag; }): EVListenerCreate and return listener instance by option. This listener is deleted when it detects an event only once.
| Name | Type | Default | 
|---|---|---|
| option* | { type: K; handler: (ev: EventMap[K]) => any; tag?: EVListenerTag; } | |
| object option | ||
EVListenerCreate and return listener instance by option. This listener is deleted when it detects an event only once.
<K extends keyof EventMap>(type: K, handler: () => any, option?: { tag?: EVListenerTag; }): EVListenerCreate and return listener instance by type, handler. This will be done immediately. When registering this hook, do not expect the payload to be passed to the callback method.
| Name | Type | Default | 
|---|---|---|
| type* | K | |
| event type | ||
| handler* | () => any | |
| event handler | ||
| option | { tag?: EVListenerTag; } | undefined | |
EVListenerCreate and return listener instance by type, handler. This will be done immediately. When registering this hook, do not expect the payload to be passed to the callback method.
<K extends keyof EventMap>(type: K): voidRemove listener by type
| Name | Type | Default | 
|---|---|---|
| type* | K | |
| event type | ||
voidRemove listener by type
<K extends keyof EventMap>(type: K, handler: (ev: EventMap[K]) => any): voidRemove listener by type and handler.
| Name | Type | Default | 
|---|---|---|
| type* | K | |
| event type | ||
| handler* | (ev: EventMap[K]) => any | |
| event handler | ||
voidRemove listener by type and handler.
<K extends keyof EventMap>(type: K, option: { handler?: (ev: EventMap[K]) => any; tag?: EVListenerTag; }): voidRemove listener by type and option.
| Name | Type | Default | 
|---|---|---|
| type* | K | |
| event type | ||
| option* | { handler?: (ev: EventMap[K]) => any; tag?: EVListenerTag; } | |
| object option | ||
voidRemove listener by type and option.
<K extends keyof EventMap>(handler: (ev: EventMap[K]) => any): voidRemove listener by handler.
| Name | Type | Default | 
|---|---|---|
| handler* | (ev: EventMap[K]) => any | |
| event handler | ||
voidRemove listener by handler.
<K extends keyof EventMap>(option: { type?: K; handler?: (ev: EventMap[K]) => any; tag?: EVListenerTag; }): voidRemove listener by option(tag, handler, tag).
| Name | Type | Default | 
|---|---|---|
| option* | { type?: K; handler?: (ev: EventMap[K]) => any; tag?: EVListenerTag; } | |
| object option | ||
voidRemove listener by option(tag, handler, tag).
(): voidRemove all listener instances.
| Name | Type | Default | 
|---|
voidRemove all listener instances.
<K extends keyof EventMap>(type: K, payload: EventMap[K]): voidEmit event.
| Name | Type | Default | 
|---|---|---|
| type* | K | |
| event type | ||
| payload* | EventMap[K] | |
| event payload | ||
voidEmit event.