类型错误: 无法读取未定义的属性'parameters'



当我在组件中注入服务时,我得到了上面提到的错误。当我从组件装饰器中删除providers属性时,它就会运行。以下是我的代码片段

ManufactureComponent.ts

import { Component, OnInit } from '@angular/core';
import { ROUTER_DIRECTIVES } from '@angular/router';
import { BaseLayoutComponent } from '../../shared/index';
import { ManufacturerService } from '../index'
@Component({
  moduleId: module.id,
  templateUrl: 'manufacturers.component.html',
  directives: [ROUTER_DIRECTIVES, BaseLayoutComponent]
})
export class ManufacturerComponent implements OnInit {
  constructor() {}
  ngOnInit() {
  }
}

ManufacturerListComponent.ts

import { Component, OnInit, OnDestroy } from '@angular/core';
import { ROUTER_DIRECTIVES } from '@angular/router';
import { ManufacturerService, IManufacturer } from '../index';
import { PageContainerComponent } from '../../shared/index';
@Component({
  moduleId: module.id,
  templateUrl: 'manufacturer-list.component.html',
  directives: [ROUTER_DIRECTIVES, PageContainerComponent],
  providers: [ManufacturerService]
})
export class ManufacturerListComponent implements OnInit {
 manufacturers: IManufacturer[];
 constructor(private manufacturerService: ManufacturerService) { }
 ngOnInit() { 
   this.getManufacturers();
 }
 getManufacturers() {
   this.manufacturerService.all()
     .subscribe(response => {this.manufacturers = response;}, 
     (error) =>  {console.log(error);})
}
}

ManufacturerService.ts

import { Injectable } from '@angular/core';
import { Response } from '@angular/http';
import { Observable } from 'rxjs/observable';
import { AuthHttp } from 'angular2-jwt';
import { Config } from '../../shared/index';
import { IManufacturer } from '../index';
@Injectable()
export class ManufacturerService {
  private baseUrl = `${Config.endpoint}/api/manufacturers`;
  constructor(private authHttp: AuthHttp) { }
  all(): Observable<IManufacturer[]> {
    return this.authHttp.get(this.baseUrl)
      .map(res => res.json());
  }
}

我还确保了依赖项被正确导入。

谢谢

您需要在根组件中提供AuthHttp(或bootstrap())

做进一步的调试,我发现它必须与ManufacturerService和它是如何导入到ManufacturerListComponent。直接导入对我来说很有效。

如果您的相互依赖的组件位于一个索引。ts文件…

最新更新