我开始了解hyperledger composer angular apps。这个代码是yeoman发生器产生的难题。 add
方法执行return this.http.post
并返回一个响应对象,该对象链接到map
运算符以转换为json输出。但我可以找到map
运算符的所有引用都表明必须指定其参数,如箭头函数(v)=> {some instructions to perform on v here});
,或匿名函数(f(v){some instructions here})
;
我在教程中看起来也是下面的代码,作为处理响应对象的最佳实践。显然map
运算符也接受一个函数,并将结果的响应对象作为`map函数的参数发送给谁。任何人都可以提供解释这种机制的链接吗?
import { Injectable } from '@angular/core';
import { Http, Response, Headers } from '@angular/http';
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/catch';
public add(ns: string, asset: Type): Observable<Type> {
console.log('Entered DataService add');
console.log('Add ' + ns);
console.log('asset', asset);
return this.http.post(this.actionUrl + ns, asset)
.map(this.extractData)
.catch(this.handleError);
}
private extractData(res: Response): any {
return res.json();
}