TypeScript · Middle · Frage 73 von 75
Wie setzt man einen typsicheren Event Emitter um?
type Events = { login: { userId: string }; logout: undefined };
on<K extends keyof Events>(event: K, cb: (payload: Events[K]) => void): void;- 1Eine Event-Map plus generischer Schlüssel, die Payloads folgen den Namen
- 2Event-Namen als
stringmit Payloadsany, geprüft in Tests - 3Gar nicht: Event Emitter lassen sich überhaupt nicht typisieren
Antwort zeigen
Richtige Antwort: Eine Event-Map plus generischer Schlüssel, die Payloads folgen den Namen
Erklärung
Ein Tippfehler im Event-Namen oder ein falscher Payload wird zum Compile-Fehler.