Załóżmy mam ten kątowa 2 Usługa:kątowa 2 karnetów Parametr do Służby Constructor
@Injectable()
class Demo {
constructor(private instanceSpecificString: string) {
}
}
Zauważ, że jego konstruktor przyjmuje ciąg specyficzne dla instancji. Mam na myśli to, że chcę utworzyć tę usługę wiele razy i za każdym razem, gdy zostanie ona utworzona, chcę przekazać jej inny ciąg w oparciu o kontekst, w którym tworzona jest usługa.
Jak to zrobić?
P.S. Przykładem jest string
, ale parametr ten może być z łatwością typu number
lub boolean
lub nawet pewnego rodzaju konfiguracji object
.
Co jeśli moja usługa jest zależność przechodnia składnika? Czy nadal mogę używać 'provide'? – battmanz
Angular2 używa hierarchicznego systemu wtryskowego, co oznacza, że gdy wtryskiwacz tworzy wystąpienie usługi, sprawdza najbliższy dostawca pod względem tokena wymaganego przez usługę. Jeśli nie znajdzie definicji w iniektorach, na które patrzy, sprawdzi wtryskiwacz macierzysty, aż do wtryskiwacza głównego. https://angular.io/docs/ts/latest/guide/hierarchical-dependency-injection.html – awiseman
Skąd pochodzi funkcja "zapewnić()"? – OddDev