NestJS · Middle · Pytanie 11 z 75
Kiedy użyć useFactory dla providera?
{
provide: "REDIS",
useFactory: async (config: ConfigService) => createClient({ url: config.get("REDIS_URL") }).connect(),
inject: [ConfigService],
}- 1Tylko w testach
- ✓Poprawna odpowiedź: Gdy instancję trzeba utworzyć z logiką lub innymi zależnościami, być może asynchronicznie, np. połączonego klienta
- 3Tylko dla klas bez zależności
Wyjaśnienie
Asynchroniczne fabryki opóźniają start aplikacji, aż się rozwiążą, więc połączenie jest gotowe, zanim ktokolwiek go użyje.