Как решить Uncaught (в обещании): Ошибка: StaticInjectorError в Angular 7? - PullRequest
0 голосов
/ 14 мая 2019

Я пытаюсь внедрить сервис в компонент моего приложения Angular.Я использую Angular версии 7.

Вот мой dashboard.component:

import { ArtistService } from './artist.service';

export class AdminDashboardComponent implements OnInit {
    constructor(private _artistService: ArtistService) { }
}

Вот некоторые из моих файлов artist.service.ts:

import { Injectable } from '@angular/core';

@Injectable()
    export class ArtistService {
}

Когда я перехожу к компоненту панели мониторинга, эта ошибка регистрируется в консоли:

Ошибка: Uncaught (в обещании):

Ошибка: StaticInjectorError (AppModule) [AdminDashboardComponent ->ArtistService]:

StaticInjectorError (Платформа: core) [AdminDashboardComponent -> ArtistService]: NullInjectorError: Нет поставщика для ArtistService!

Я пытался решить эту проблему, обновив свой сервис с помощьюэтот декоратор:

@Injectable({
    providedIn: 'root'
})

Но я все равно получаю ту же ошибку.Может кто-нибудь указать, что мне нужно изменить?Большое спасибо заранее

1 Ответ

1 голос
/ 14 мая 2019

либо вам нужно предоставлять свои услуги в модуле (например, AppModule), как показано ниже

@NgModule({
   // ... other codes 
   providers: [
      ArtistService
      // ... other codes
   ]
})

, либо, как вы упомянули, используя providedIn, как указано ниже в вашем сервисе

@Injectable({
    providedIn: 'root'
})
...