linkOptional
npm Package | @angular/core |
---|---|
Module | import { Optional } from '@angular/core'; |
Source | core/src/di/metadata.ts |
A parameter metadata that marks a dependency as optional.
Injector
provides null
if the dependency is not found.
linkHow To Use
@Injectable()
class Car {
constructor(@Optional() public engine:Engine) {}
}
linkDescription
For more details, see the "Dependency Injection Guide".
linkExample
class Engine {}
@Injectable()
class Car {
constructor(@Optional() public engine: Engine) {}
}
const injector = ReflectiveInjector.resolveAndCreate([Car]);
expect(injector.get(Car).engine).toBeNull();