Angular API HttpClient 方法定义说明

Angular API HttpClient Method definition clarification

我正在阅读 Angular 上的文档,试图理解 'post' method for Angular's HttpClient class 的方法定义的语法,但我不明白管道是什么暗示在定义中。

在这里查看 header 或参数定义,它说:

  params?: HttpParams | { 
    [param: string]: string | string[]; 
  }; 

完整的定义是:

post( 
  url: string, 
  body: any, 
  options: { headers?: HttpHeaders | {
     [header: string]: string | string[]; 
   }; 
  observe?: "body"; 
  params?: HttpParams | { 
    [param: string]: string | string[]; 
  }; 
  reportProgress?: boolean; 
  responseType: "arraybuffer"; withCredentials?: boolean; 
})

管道在此定义中意味着什么?我用谷歌搜索了它,但关于语法的确切含义并不多,我是 angular 的新手,所以非常欢迎解释。

我最好的猜测是它像 OR 运算符一样工作?对吗?

| 引入了联合类型,如 here 所述。这意味着 params 可以是 HttpParams 或具有所有 stringstring[] 属性的对象 ({ [param: string]: string | string[]; })