我正在尝试从 Angular 调用 API,但收到此错误:
Property 'map' does not exist on type 'Observable<Response>'
我正在使用 Angular 2.0.0-beta.17。
您需要导入map运算符:
map
import 'rxjs/add/operator/map'
或更一般地说:
import 'rxjs/Rx';
注意:对于 RxJS6.x.x及更高版本,您必须使用可管道操作符,如下面的代码片段所示:
6.x.x
import { map } from 'rxjs/operators'; import { HttpClient } from '@angular/common/http'; // ... export class MyComponent { constructor(private http: HttpClient) { } getItems() { this.http.get('https://example.com/api/items').pipe(map(data => {})).subscribe(result => { console.log(result); }); } }
这是由于 RxJS 团队取消了对使用的支持,请参阅RxJS 更改日志中的重大更改以获取更多信息。
从变更日志:
操作符 :现在必须从 rxjs 导入可管道操作符,如下所示import { map, filter, switchMap } from 'rxjs/operators';:没有深度进口。
import { map, filter, switchMap } from 'rxjs/operators';