Inject

Decorator that marks a constructor parameter as a target for Dependency Injection (DI).

See more...


 @Inject<T = any>(token?: T)

Parameters

Option Type Description
token T

lookup key for the provider to be injected (assigned to the constructor parameter).


Optional. Default is `undefined`.

See also

Description

Any injected provider must be visible within the module scope (loosely speaking, the containing module) of the class it is being injected into. This can be done by:

  • defining the provider in the same module scope
  • exporting the provider from one module scope and importing that module into the module scope of the class being injected into
  • exporting the provider from a module that is marked as global using the @Global() decorator

Injection tokens

Can be types (class names), strings or symbols. This depends on how the provider with which it is associated was defined. Providers defined with the @Injectable() decorator use the class name. Custom Providers may use strings or symbols as the injection token.