open-consul/ui-v2/app/components/event-source/README.mdx
John Cowen 52705125a1
ui: Remove WithEventSource mixin, use a component instead (#7953)
The WithEventSource mixin was responsible for catching EventSource
errors and cleaning up events sources then the user left a Controller.

As we are trying to avoid mixin usage, we moved this all to an
`EventSource` component, which can clean up when the component is
removed from the page, and also fires an onerror event.

Moving to a component firing an onerror event means we can also remove
all of our custom computed property work that we were using previously
to catch errors (thrown when a service etc. is removed)
2020-06-17 14:19:50 +01:00

26 lines
823 B
Plaintext

## EventSource
```handlebars
<EventSource
@src={{eventSourceObject}}
@onerror={{action 'error'}}
/>
```
### Arguments
| Argument | Type | Default | Description |
| --- | --- | --- | --- |
| `src` | `EventSourceProxy` | | An EventSource object |
| `onerror` | `Function` | | The action to fire when an error occurs. Emits ErrorEvent object with an `error` property containing the Error. |
| `closeOnDestroy` | `Boolean` | true | Whether to close and destroy the event source when the component is destroyed |
This component is used to configure event source error from within a template, but also ensures that EventSources are cleaned/up destroyed when the user leaves the page (when the component is removed from the page)
### See
- [Component Source Code](./index.js)
- [Template Source Code](./index.hbs)
---