属性"map"在类型上不存在。我正在尝试以不同的方式导入"rxjs"模块,但它不起作用。
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/catch';
list(){
return this.http.get(endpoint)
.map(responce=>responce.json())
.catch(this.handleError)
}
由于它是 Angular 6,因此您使用的是第 6 版的 RxJS。
这是您想要执行的操作的 RxJS 6 方法:
import { map } from 'rxjs/operators';
list(){
return this.http.get(endpoint)
.pipe(
map(responce=>responce.json()),
catchError(this.handleError)
)
}
在 angular 6 中,您不必调用.json()
,因为它是隐式完成的,因此此示例是错误的,您根本不需要map
,但它只是向您展示 RxJS 6 中.map()
的等效项
打开你的终端,然后命令这个
npm install --save rxjs-compat
或
npm install --save rxjs-compat@6
或
npm i rxjs-compat --save-dev
我回家你的问题会解决的。