Angular 未调用映射的HttpClient主体

Angular 未调用映射的HttpClient主体,angular,Angular,有人知道为什么不调用map函数体的原因吗 除了API不工作之外,我已经检查过了,它正在工作 this.httpClient.get(this.url) .map( (data) => { console.log('here'); console.log(data); return data; } ) 可观察的是冷的,这意味着您必须订阅它才能调用它并获得值 this.httpClient.get(this.url) .map(

有人知道为什么不调用map函数体的原因吗

除了API不工作之外,我已经检查过了,它正在工作

this.httpClient.get(this.url)
  .map(
    (data) => {
      console.log('here');
      console.log(data);
      return data;
    }
  )

可观察的
是冷的,这意味着您必须订阅它才能调用它并获得值

this.httpClient.get(this.url)
  .map(
    (data) => {
      console.log('here');
      console.log(data);
      return data;
    }
  ).subscribe(data => console.log('GOT DATA', data));

只需添加一个订阅,管道就会被调用。

一个可观察的
是冷的,这意味着你必须订阅它才能调用它并获得一个值

this.httpClient.get(this.url)
  .map(
    (data) => {
      console.log('here');
      console.log(data);
      return data;
    }
  ).subscribe(data => console.log('GOT DATA', data));

只需添加一个订阅,管道就会被调用。

您需要提到
数据的类型,即
响应
,除此之外,
映射
操作符用于以所需格式解析您的响应,并返回一个可观察的数据,该数据应
订阅

this.httpClient.get(this.url)
  .map(response => response.json())
  .subscribe(data=>console.log(data));

我假设您使用的是angular>=4.2.3,这意味着您不需要
map
操作符,因为新的
HttpClient
默认将响应格式化为JSON,因此我们不再需要使用
response.JSON()解析它:

您需要提及
数据的类型,即
响应
,除此之外,
映射
运算符用于以所需格式解析您的响应,并返回一个可观察的,应为
订阅

this.httpClient.get(this.url)
  .map(response => response.json())
  .subscribe(data=>console.log(data));

我假设您使用的是angular>=4.2.3,这意味着您不需要
map
操作符,因为新的
HttpClient
默认将响应格式化为JSON,因此我们不再需要使用
response.JSON()解析它:

不,我们不需要。我们不是通灵者。发布一个或多个代码。仅当您订阅时才会进行http调用。别忘了订阅!不,我们没有。我们不是通灵者。发布一个或多个代码。仅当您订阅时才会进行http调用。别忘了订阅!嗨,如果这个或任何答案已经解决了你的问题,请考虑通过点击复选标记接受它。这向更广泛的社区表明,你已经找到了一个解决方案,并给回答者和你自己带来了一些声誉。没有义务这样做。嗨,如果这个或任何答案已经解决了你的问题,请考虑通过点击复选标记接受它。这向更广泛的社区表明,你已经找到了一个解决方案,并给回答者和你自己带来了一些声誉。没有义务这样做。