diff options
| author | Jason Miller <[email protected]> | 2021-06-22 17:34:36 -0400 |
|---|---|---|
| committer | Jason Miller <[email protected]> | 2021-06-22 17:34:36 -0400 |
| commit | 7872a475779b68f22d26690f9bb2374237285618 (patch) | |
| tree | ad918e908d3fa8e52084c7ecff7a84a745c18a61 | |
| parent | 8f439b8ae54d3864c24ddf7205297031d64fbad6 (diff) | |
| parent | 2d59261b75de2cbc4631ccee8db717911974467e (diff) | |
Merge branch 'cheaper' of https://github.com/sealice/mitt into sealice-cheaper
| -rw-r--r-- | src/index.ts | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/src/index.ts b/src/index.ts index 00286bc..5365b6e 100644 --- a/src/index.ts +++ b/src/index.ts @@ -89,16 +89,23 @@ export default function mitt<Events extends Record<EventType, unknown>>( * @memberOf mitt */ emit<Key extends keyof Events>(type: Key, evt?: Events[Key]) { - ((all!.get(type) || []) as EventHandlerList<Events[keyof Events]>) - .slice() - .map((handler) => { - handler(evt!); - }); - ((all!.get('*') || []) as WildCardEventHandlerList<Events>) - .slice() - .map((handler) => { - handler(type, evt!); - }); + let handlers = all!.get(type); + if (handlers) { + (handlers as EventHandlerList<Events[keyof Events]>) + .slice() + .map((handler) => { + handler(evt!); + }); + } + + handlers = all!.get('*'); + if (handlers) { + (handlers as WildCardEventHandlerList<Events>) + .slice() + .map((handler) => { + handler(type, evt!); + }); + } } }; } |
