Inject factory will create and inject a module instance using its factory method.
A factory method is created whenever you create a non-singleton module using only the
@inject() a non-singleton module as a dependency, Injex will inject the factory method so you can create multiple instances of it whenever you need them. Sometimes, you just want to directly inject an instance of this module. Using
@injectFactory() will resolve these cases.
@injectFactory() decorator to inject a module instance using its factory method.
In this example, the
PlayerCar class has the
steeringWheel member which resolves to a
SteeringWheel instance. If we replace the
@injectFactory() decorator with the regular
@inject(), we get the
SteeringWheel factory method.