TypeScript · Middle · Pytanie 73 z 75
Jak zaimplementować bezpieczny typowo event emitter?
type Events = { login: { userId: string }; logout: undefined };
on<K extends keyof Events>(event: K, cb: (payload: Events[K]) => void): void;- ✓Poprawna odpowiedź: Opisać zdarzenia w typie-mapie i użyć generycznego klucza, by typ payloadu podążał za nazwą zdarzenia
- 2Używać zdarzeń typu
stringi payloaduany - 3Event emitterów nie da się otypować
Wyjaśnienie
Literówka w nazwie zdarzenia lub zły payload stają się błędami kompilacji.