如何正确使用父组件中的服务?

时间:2018-06-10 14:18:38

标签: angular typescript

我正在尝试继承。子和父组件。我想在父组件中使用服务。当我尝试在父构造函数中输入服务时出现问题:

 export class ParentComponent  {
  items: any[] = [];
  fooService: FooService;

  constructor(fooService: FooService) { // here is the problem with service
    this.fooService = fooService;
  }
}

因为编译器要求在子构造函数中生成super()

没有参数的

super()会产生错误

当我将服务放入参数super(fooService)时 - 它也会出错。

如何正确调用父组件中的服务?

Here是我的代码。

1 个答案:

答案 0 :(得分:0)

始终以这种方式注入和使用服务。然后它被明确地实例化。

<强>父

@Component({
    selector: 'parent', 
    template: '<child></child>' 
})
export class ParentComponent  {
    items: any[] = [];

    constructor(private fooService: FooService) { }

    // example
    someMethod(): void {
       this.items = this.fooService.getItems();
    }
}

儿童

@Component(
{ selector: 'child', 
  template: '<h3>Child component </h3>' 
}) 
export class ChildComponent { 
    constructor(){  }
}