【问题标题】:NullInjectorError: No provider for NotifierQueueService! Karma Angualr 6NullInjectorError:NotifierQueueService 没有提供者!业力角 6
【发布时间】:2020-06-23 11:25:12
【问题描述】:

我在我的应用程序中使用了 angular-notifier。它与导入配合得很好 从 'angular-notifier' 导入 { NotifierModule }; 在 app.module.ts 中

在组件的 spec.ts 中,我添加了 import { NotifierService } from 'angular-notifier';

提供者:TestBed 中的 [NotifierService]

NullInjectorError: No provider for NotifierService : 这通过 spec.ts 中的上述导入解决了

之后我面临这个问题:NullInjectorError: No provider for NotifierQueueService!

我没有在 NotifierQueueService 上找到任何导入。

请帮我解决这个问题,我在 2 个工作日内苦苦挣扎。我们有什么解决方案吗?

【问题讨论】:

    标签: unit-testing notifications angular6 karma-jasmine


    【解决方案1】:

    在导入部分后的服务类中检查以下代码是否存在

    @Injectable({
      providedIn: 'root'
    })
    

    【讨论】:

      【解决方案2】:

      您应该将 NotifierModule 包含在“导入”部分中

      从 'angular-notifier' 导入 { NotifierService, NotifierModule };

      ... TestBed.configureTestingModule({ 进口:[NotifierModule] ...

      【讨论】:

        【解决方案3】:

        此问题通常是提供程序中缺少服务注入。

        尝试在 TestBed.configureTestingModule 中的提供者中添加 NotifierQueueService

        TestBed.configureTestingModule({
            declarations: [],
            providers: [NotifierQueueService] // Here
        })
        

        【讨论】:

          猜你喜欢
          • 2020-11-14
          • 2018-07-05
          • 1970-01-01
          • 2017-02-26
          • 2019-02-02
          • 1970-01-01
          • 2019-04-23
          • 1970-01-01
          • 2019-01-02
          相关资源
          最近更新 更多