Entwurfsmuster · Middle · Frage 18 von 75
Wie injiziert man eine Abhängigkeit in React-Komponenten, damit man den API-Client in Tests tauschen kann?
- 1Den Client direkt importieren und in Tests eine globale Variable ändern
- 2In jeder Komponente beim Rendern einen neuen Client erzeugen
- 3Den Client per Context-Provider übergeben und in Tests mit anderem Wert umhüllen
Antwort zeigen
Richtige Antwort: Den Client per Context-Provider übergeben und in Tests mit anderem Wert umhüllen
Erklärung
Context ist der eingebaute DI-Mechanismus von React: <ApiProvider client={mockClient}> in Tests und Storybook, der echte Client in der App. QueryClientProvider und der Provider des Redux Store funktionieren genauso.