我们可以在TestBed中配置注入器吗

时间:2018-06-30 15:25:15

标签: angular karma-jasmine angularjs-injector

我正在用Angular编写自定义ErrorHandler的测试用例。我在构造函数中添加了Injector的依赖关系,因为我了解到在ErrorHandler之后初始化提供程序。如下所示:

export class ApplicationErrorHandler implements ErrorHandler {
    constructor(injector: Injector) {
       this.injector = injector;
    }
}

现在在编写测试用例时,应该如何创建我的错误处理程序。我可以将Injector添加为提供程序,还是可以按以下方式进行操作:

errorHandler = injector.get(ApplicationErrorHandler);

无论如何,我都将errorHandler定义为undefined并出现以下错误:

Error: Unexpected value '[object Object]' imported by the module 'DynamicTestModule'

我非常感谢您以测试方式编写的任何帮助。谢谢!

1 个答案:

答案 0 :(得分:-1)

当您在Module内错误地提供Provider时,通常会发生上述问题,反之亦然。只需仔细检查您是否已在提供程序下的“模块和服务”下正确导入了模块。

相关参考