Injector

Injector

Injector

Package: @vendure/core File: injector.ts

The Injector wraps the underlying Nestjs ModuleRef, allowing injection of providers known to the application’s dependency injection container. This is intended to enable the injection of services into objects which exist outside of the Nestjs module system, e.g. the various Strategies which can be supplied in the VendureConfig.

Signature

class Injector {
  constructor(moduleRef: ModuleRef)
  get(typeOrToken: Type<T> | string | symbol) => R;
  getConnection() => Connection;
  resolve(typeOrToken: Type<T> | string | symbol, contextId?: ContextId) => Promise<R>;
}

Members

constructor

method
type:
(moduleRef: ModuleRef) => Injector

get

method
type:
(typeOrToken: Type<T> | string | symbol) => R
Retrieve an instance of the given type from the app’s dependency injection container. Wraps the Nestjs ModuleRef.get() method.

getConnection

method
type:
() => Connection
Retrieve the TypeORM Connection instance.

resolve

method
type:
(typeOrToken: Type<T> | string | symbol, contextId?: ContextId) => Promise<R>
Retrieve an instance of the given scoped provider (transient or request-scoped) from the app’s dependency injection container. Wraps the Nestjs ModuleRef.resolve() method.