Запропонувати правкуПокращити цю статтюДопрацюйте відповідь до «Що таке провайдер (Provider)?». Ваші зміни проходять модерацію перед публікацією.Потрібне підтвердженняКонтентЩо ви змінюєте🇺🇸EN🇺🇦UAПереглядЗаголовок (UA)Коротка відповідь (UA)**Провайдер (Provider)** - це інструкція для Angular, як створювати або де брати залежність, коли її запитують через DI: правило для інжектора «якщо хтось попросить цей сервіс - дай йому цей об'єкт». **Ключове:** Провайдер визначає, який токен використати, що повернути (`useClass`, `useValue`, `useExisting`, `useFactory`) і де його зареєструвати.Показується над повною відповіддю для швидкого нагадування.Відповідь (UA)Зображення**Провайдер (Provider)** - це інструкція для Angular, **як створювати або де брати залежність**, коли її запитують через DI. Якщо просто: провайдер - це **правило**, яке каже інжектору: > «Якщо хтось попросить ось цей сервіс - дай йому ось такий об'єкт». --- ### Приклад: ```ts import { Injectable } from '@angular/core'; @Injectable({ providedIn: 'root' }) export class UserService {} ``` Тут `providedIn: 'root'` - це і є **провайдер**. Він каже Angular: *створи один екземпляр* `UserService` *у кореневому інжекторі.* --- ### Провайдер можна задати вручну: ```ts providers: [ { provide: UserService, useClass: UserService } ] ``` або, наприклад: ```ts providers: [ { provide: 'API_URL', useValue: 'https://api.example.com' } ] ``` --- ### Що робить провайдер: - каже, **який токен** (ключ) використовувати (`UserService`, `'API_URL'` тощо); - пояснює, **що повернути** (`useClass`, `useValue`, `useExisting`, `useFactory`); - повідомляє, **де реєструвати** - у модулі, компоненті чи на рівні застосунку. --- **Підсумок:** Провайдер - це спосіб повідомити Angular, *як саме створювати або підставляти залежність*, коли вона потрібна.Для рев’юераПримітка для модератора (необов’язково)Бачить лише модератор. Прискорює рев’ю.