[ Web Proxy ]
URL:
Viewing: https://angular.dev/api/core/ConstructorProvider [Back]  [Original]

ConstructorProvider Angular Skip to main content
menu
close
more_horiz
menuAPI
@angular/core

ConstructorProvider

interface
stable

Configures the Injector to return an instance of a token.

Dependency Injection Guide

On this page

    arrow_upward_alt Back to the top

    API

        
          interface ConstructorProvider extends ConstructorSansProvider {  provide: Type<any>;  multi?: boolean | undefined;  override deps?: any[] | undefined;}
        
        

    provide

    Type<any>

    An injection token. Typically an instance of Type or InjectionToken, but can be any.

    multi

    boolean | undefined

    When true, 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.

    deps

    any[] | undefined

    A list of tokens to be resolved by the injector.

    Usage Notes

    class Square {
              name = 'square';
            }
    
            const injector = Injector.create({providers: [{provide: Square, deps: []}]});
    
            const shape: Square = injector.get(Square);
            expect(shape.name).toEqual('square');
            expect(shape instanceof Square).toBe(true);

    Multi-value example

    const locale = new InjectionToken<string[]>('locale');
            const injector = Injector.create({
              providers: [
                {provide: locale, multi: true, useValue: 'en'},
                {provide: locale, multi: true, useValue: 'sk'},
              ],
            });
    
            const locales: string[] = injector.get(locale);
            expect(locales).toEqual(['en', 'sk']);
    Jump to details

    Web Proxy Viewer  |  New URL  |  Original Page