Estamos usando o EventSource em vários lugares do aplicativo SvelteKit, assim:
<script>
import { onDestroy } from 'svelte';
import { customEventSource } from '$lib/events';
const callback = (event: MessageEvent) => {
console.log('event:', event);
};
customEventSource.addEventListener('message', callback);
onDestroy(() => {
customEventSource.removeEventListener('message', callback);
});
</script>
Como você pode ver, há muito o que escrever a cada vez.
Não existe uma maneira mágica – como Svelte nos ensinou – de simplificar?
Principalmente para não precisar ligar manualmenteonDestroy
todas as vezes?
Imagino que algo assim funcionará:
No seu componente: