For example: @NgModule ({ providers: [ { provide: MyService, useFactory: (optionalDep) => new MyService(optionalDep) deps: [SOME_DEP] } }) class MyModule {} Can useFactory have optional dependencies? Continue reading...