Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 什么是<;T>;作为一种类型使用?_Angular_Typescript - Fatal编程技术网

Angular 什么是<;T>;作为一种类型使用?

Angular 什么是<;T>;作为一种类型使用?,angular,typescript,Angular,Typescript,我见过在代码中使用as作为类型。我一直认为它是一个自定义接口,但最近我看到一些代码使用了它,但我没有看到标题为t的接口 代码如下: get<T>(url: string, navController: NavController) { return this.http.get<T>(AppSettings.API_ENDPOINT + url, {headers: this.buildHeaders()}).pipe( catchError((er

我见过在代码中使用as作为类型。我一直认为它是一个自定义接口,但最近我看到一些代码使用了它,但我没有看到标题为t的接口

代码如下:

  get<T>(url: string, navController: NavController) {
    return this.http.get<T>(AppSettings.API_ENDPOINT + url, {headers: this.buildHeaders()}).pipe(
      catchError((err: any) => this.handleError(err, navController))
    );
  }
get(url:string,navController:navController){
返回this.http.get(AppSettings.API_ENDPOINT+url,{headers:this.buildHeaders()}).pipe(
catchError((err:any)=>this.handleError(err,navController))
);
}

这是默认类型吗?它代表什么???

它是泛型类型参数


泛型类型参数允许您在编译时为方法指定任意类型T,而无需在方法或类声明中指定具体类型。

T是泛型类型,即它的行为类似于一个变量,该变量将保存您不知道的类型

所以

函数标识(arg:T):T{
返回arg;
}

在上面,我们知道如果identify接受number,它将返回number,依此类推。

T
表示任何被接受的
generic
类型如果它只是一个generic,那么默认类型不是“any”吗?所以你不需要有identity(),你只需要做identity()?阅读以了解any和t之间的区别。typescript中泛型的全部要点是针对强类型的。因此,如果不需要强类型,只需使用
Identity(…)
function identity<T>(arg: T): T {
    return arg;
}