From 80f06acfd1219da33df7fe35acb3eee463005a5a Mon Sep 17 00:00:00 2001 From: myukang Date: Wed, 18 Oct 2023 22:26:40 +0900 Subject: [PATCH] docs(events): add events listner options --- content/techniques/events.md | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/content/techniques/events.md b/content/techniques/events.md index 60769a050e..f11387a55d 100644 --- a/content/techniques/events.md +++ b/content/techniques/events.md @@ -85,7 +85,30 @@ handleOrderCreatedEvent(payload: OrderCreatedEvent) { > warning **Warning** Event subscribers cannot be request-scoped. -The first argument can be a `string` or `symbol` for a simple event emitter and a `string | symbol | Array` in a case of a wildcard emitter. The second argument (optional) is a listener options object ([read more](https://github.com/EventEmitter2/EventEmitter2#emitteronevent-listener-options-objectboolean)). +The first argument can be a `string` or `symbol` for a simple event emitter and a `string | symbol | Array` in a case of a wildcard emitter. + +The second argument (optional) is a listener options object as follows: + + +```typescript +export type OnEventOptions = OnOptions & { + /** + * If "true", prepends (instead of append) the given listener to the array of listeners. + * + * @see https://github.com/EventEmitter2/EventEmitter2#emitterprependlistenerevent-listener-options + * + * @default false + */ + prependListener?: boolean; + + /** + * If "true", the onEvent callback will not throw an error while handling the event. Otherwise, if "false" it will throw an error. + * + * @default true + */ + suppressErrors?: boolean; +}; +``` ```typescript @OnEvent('order.created', { async: true }) @@ -94,6 +117,9 @@ handleOrderCreatedEvent(payload: OrderCreatedEvent) { } ``` +> info **Hint** read more about ([listener options object](https://github.com/EventEmitter2/EventEmitter2#emitteronevent-listener-options-objectboolean)). + + To use namespaces/wildcards, pass the `wildcard` option into the `EventEmitterModule#forRoot()` method. When namespaces/wildcards are enabled, events can either be strings (`foo.bar`) separated by a delimiter or arrays (`['foo', 'bar']`). The delimiter is also configurable as a configuration property (`delimiter`). With namespaces feature enabled, you can subscribe to events using a wildcard: ```typescript