0 Tage Serie
javascript / intermediate
Snippet

Dynamische Dependency Injection mit useFactory

Der useFactory-Provider ermöglicht es, eine Abhängigkeit dynamisch basierend auf anderen Services oder Laufzeitbedingungen zu erstellen. Er ist ideal für komplexe Instanziierungslogik, die Parameter von anderen Providern benötigt.

snippet.js
javascript
1
2
3
4
5
6
7
export const APP_LOGGER_PROVIDER = {
provide: Logger,
useFactory: (config: ConfigService) => {
return config.isDev ? new ConsoleLogger() : new FileLogger();
},
deps: [ConfigService]
};
angular
Erklärung
1
useFactory: (config: ConfigService) => { ... }
Eine Funktion, die basierend auf dem Config-Service die gewünschte Implementierung zurückgibt.
2
deps: [ConfigService]
Gibt die Abhängigkeiten an, die als Argumente in die Factory-Funktion injiziert werden sollen.