Angular 4:在非组件类中注入具有@ angular / http作为依赖关系的服务

时间:2017-09-19 11:11:56

标签: angular angular2-services angular4-httpclient

嗨,我是Angular 4的新手。 我有一个名为' httpService'将@ angular / http作为依赖项之一,还有其他一些,它可以进行错误处理。

现在我正常上课(除了成分)说'Child.ts'它扩展了基类' Base.ts'使用构造函数在类上设置一些属性,并使用上面提到的httpService通过rest apis从服务器获取数据。

我的整体结构如下所示。

> df$Daily_Positive <- ddply(df, .(Review_Date, Hotel_ID), transform, Daily_Positive = cumsum(Positive))

并且有扩展基类的类。

Base.ts
============================================================
export class Base {
  public url: string;
  public httpSvc: HttpService;

  constructor(url) {
    this.url = url;
  }

  public getUrl(): string {
    return this.url;
  }

  public query(reqParams: URLSearchParams): Observable<any> {
    return this.httpSvc.get(this.getUrl(), reqParams);
  }
}

这样我就可以让每个模型都有自己的方法从服务器获取数据。

现在在这种情况下如何使用httpService作为尚未初始化的。

请建议我的方法或更好的解决方案。

由于

Satish Lakhani

1 个答案:

答案 0 :(得分:0)

你需要像这样注入它:

constructor(private http: HttpService)

请记住提供顶级服务,例如app.module:

providers:[
 HttpService
],