从Angluar 4转换为Angular 7时如何实现“ URLSearchParams”和“ RequestOptions”

时间:2019-02-05 08:40:27

标签: angular

我将项目从Angular 4转换为Angular7。我已经将http转换为httpClient,并且也使用了common / http。我是Angular的新手,我不知道如何将UrlSearchParms和RequestOptions转换为新版本。有人可以告诉我如何将以下转换为角度7吗?提前致谢。我知道这似乎很愚蠢。但是希望你能忍受并指出一个方法。

2 个答案:

答案 0 :(得分:0)

您可以省略该课程,并为您的通话提供选项。您还应该将RxJS运算符更改为使用pipe

return this.http.get(environment.API_BASE_URL + '/' + apiUrl, {
  headers,
  search: params
}).pipe(
  .map(this.extractData),
  .catchError(this.handleError)
);

答案 1 :(得分:0)

在Http Client中,您可以通过以下方式实现相同的目的。

override func viewDidAppear(_ animated: Bool) {
    super.viewDidAppear(animated)

    UserDefaults.standard.set(false, forKey: "isPopOverVCPopped")

    if UserDefaults.standard.bool(forKey: "isPopOverVCPopped") == false {
        UserDefaults.standard.set(true, forKey: "isPopOverVCPopped")

        popView()
    }
}

这里List<Cat> cats = petStore.getCatsForSale(); cats.stream().limit(1) .flatMap(c -> { logger.info("Processing for cats: " + cats.size()); return cats.stream(); }).forEach(Cat::giveFood); import { HttpClient,HttpHeaders, HttpParams } from '@angular/common/http'; constructor(private httpClient: HttpClient) { } getData(){ let headers = new HttpHeaders(); headers = headers.append('header-1', 'value-1'); headers = headers.append('header-2', 'value-2'); let params = new HttpParams(); params = params.append('param-1', 'value-1'); params = params.append('param-2', 'value-2'); this.httpClient.get("/data", {headers , params }) } 是不可变的类,因此在每个调用集或追加方法之后,它们将返回一个新实例,这就是您应该这样做的原因:params = params.append(...)

希望这会有所帮助!