Skip to main content

Що таке фабричні сервіси?

Фабричні сервіси - це сервіси, що створюються не напряму через клас, а за допомогою фабричної функції.

Тобто замість звичайного useClass використовується useFactory:

typescript
providers: [ { provide: MyService, useFactory: (dep: OtherService) => new MyService(dep.config), deps: [OtherService] } ]

Так можна:

  • контролювати, як саме створюється об'єкт (наприклад, залежно від середовища чи налаштувань);
  • повертати різні екземпляри одного типу за різних умов;
  • впроваджувати залежності вручну через параметр deps.

По суті, фабричний сервіс - це спосіб гнучко керувати створенням залежностей у DI.

Коротка відповідь

Для співбесіди
Premium

Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.