为什么Angular2无法注入我的服务?

索斯滕·韦斯特海德

我正在编写plnkr来测试一些路由问题,但是突然出现此错误消息,无论我在代码中进行了什么更改,都不会消失:

例外:错误:未捕获(承诺):无法解析EmployeeListComponent的所有参数:(?)。

这是代码的相关部分:

export class EmployeeListComponent {
  employees: Employee[];
  constructor(private _employeeService: EmployeeService) {
    _employeeService.getAll().subscribe(employees =>
      this.employees = employees);
  }
}

看来Angular无法解决EmployeeService,对吧?我在上面的代码段中将其注释掉,而且肯定没有错误。

我忘了在main.ts或中注册app.component.ts吗?不,

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

import { 
    ROUTER_DIRECTIVES
} from '@angular/router';

import {
  EmployeeService
} from './employee.service';


@Component({
  selector: 'plk-app',
  template: '<router-outlet></router-outlet>',
  directives: [ 
    ROUTER_DIRECTIVES
  ],
  providers: [
    EmployeeService
  ]
})
export class AppComponent {

}

我应该在中注册main.ts吗?好吧,当错误第一次出现时我遇到了,然后我将其移动app.component.ts以检查是否可以解决该问题,但是没有。

目前,我看不到树木茂密的森林,Angular的错误消息并没有真正帮助(他们从来没有帮助过)。这里有人可以发现问题吗?可以在这里找到plnkr

拉文德·库马尔

在访问了几个问题之后,我知道由于缺少TypeScript编译器而发生了此问题。如果您没有使用Typescript编译器,则需要使用' Inject'from' @angular/core'显式注入服务我已经在您提供的插件和其工作中尝试过它。

在您的情况下,您需要对进行更改employee-list.component.tsInject@angular/core构造器中导入并在构造器中显式注入服务,例如:

constructor(@Inject(EmployeeService) private employeeService: EmployeeService){}

如果您发现任何解决方案对您有帮助,请随时提出任何问题并接受我的回答。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

angular2中没有提供服务错误的提供程序,为什么我需要将其注入到其父组件中?

Angular2:注入服务

为什么我的路线动画无法在Angular2中使用?

Angular2简单的Http服务注入

为什么我的 angular2 方法不能正常工作?

Angular2 +为什么我得到无效的日期

使用提供程序向我的服务构造函数注入多个值-angular2

将服务注入angular2中的服务

无法将服务注入到另一个服务(单例)Angular2中

为什么无法将记录器服务注入CompilerPass?

扩展Angular2 Http不会注入服务

在不注入angular2的情况下使用服务

angular2:来自注入服务的奇怪的空错误

Angular2服务未作为单例注入

Angular2注入服务未定义

Angular2服务测试:使用beforeEach注入依赖项

Angular2将父级服务注入子级

将Http注入服务时Angular2 [typescript]错误

我是否错误地注入了此Angular2服务?(Ionic2项目)

为什么Nginx无法启动我的服务?

组件无法识别我通过依赖注入(Angular)传递的服务

angular2服务基类继承-为什么'this'为null?

Angular2 为什么数据没有在服务器端绑定

为什么在2个模块中注入服务是Singleton Pattern?

为什么Vega 3无法与Angular2一起使用?

为什么在ngOnInit中无法访问angular2对象?

为什么[disabled] =“ canDisable”无法用于Angular2反应形式

无法确定为什么空格出现在angular2 html的按钮中

为什么angular2无线电模块无法正确渲染?