Typescript / Angular:静态类引用作为函数参数

时间:2019-02-20 14:22:28

标签: angular typescript function generics parameters

我对打字稿很陌生,发现将http响应映射到类确实很不错,例如

getMovies(): Observable<Movie[]> {
  return this.http.get<Movie[]>(this.endpoint);
}

返回填充的Movie类数组(仅作为示例)

这使我试图通过在父类(例如,

)中调用假设的get方法来对此进行概括
// child
getMovies(): Observable<Movie[]> {
  return this.super.get(class_reference_here, this.endpoint);
}

// parent
get(reference: any, endpoint: string): Observable<any> /* or <any[]> ?? */  {
    return this.http.get<reference[]>(endpoint);
}

有没有办法实现这样的目标?有没有一种方法可以用合理的方法填充class_reference_here?它会在打字稿上吐吗?我不知道!任何帮助是极大的赞赏。

2 个答案:

答案 0 :(得分:0)

我认为您正在寻找Generics

// child
getMovies(): Observable<Movie[]> {
  return this.super.get<Movie[]>(this.endpoint);
}

// parent
get<T>(endpoint: string): Observable<T> {
    return this.http.get<T>(endpoint);
}

答案 1 :(得分:0)

我看不到将抽象层添加到httpClient或您尝试执行的操作的意义。不过,您应该看看Generics in Typescript

function identity<T>(arg: T): T {
  return arg;
}
相关问题