Stable Interface
What it does
Configures the Injector
to return a value of another useExisting
token.
How to use
1 | const provider: ExistingProvider = {provide: 'someToken' , useExisting: 'someOtherToken' }; |
Interface Overview
1 2 3 4 5 | interface ExistingProvider { provide : any useExisting : any multi : boolean } |
Interface Description
For more details, see the Dependency Injection Guide.
Example
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | class Greeting { salutation = 'Hello' ; } class FormalGreeting extends Greeting { salutation = 'Greetings' ; } const injector = ReflectiveInjector.resolveAndCreate( [FormalGreeting, {provide: Greeting, useExisting: FormalGreeting}]); expect(injector.get(Greeting).salutation).toEqual( 'Greetings' ); expect(injector.get(FormalGreeting).salutation).toEqual( 'Greetings' ); expect(injector.get(FormalGreeting)).toBe(injector.get(Greeting)); |
Interface Details
provide : any
An injection token. (Typically an instance of Type
or OpaqueToken
, but can be any
).
useExisting : any
Existing token
to return. (equivalent to injector.get(useExisting)
)
multi : boolean
If true, than injector returns an array of instances. This is useful to allow multiple providers spread across many files to provide configuration information to a common token.
1 2 3 4 5 6 7 | const injector = ReflectiveInjector.resolveAndCreate([ {provide: 'local' , multi: true , useValue: 'en' }, {provide: 'local' , multi: true , useValue: 'sk' }, ]); const locales: string[] = injector.get( 'local' ); expect(locales).toEqual([ 'en' , 'sk' ]); |
exported from @angular/core/index, defined in @angular/core/src/di/provider.ts
Please login to continue.