2016-12-01 47 views
1

我已经建立供应商页面,我有我的文章,并在其中HTTP观察到的回报空

在这里得到的要求就是我的服务返回观察到的

post(url: string,data:any): Observable<any>{ 

    return this.http.post(this.configurator.restServerBaseUrl+url,data) 
    .map((result:Response)=> { 
     result.json() 
    }) 
    } 

这里是我的部分代码

submit(){ 
    this.rest.post('/validateUser',validateUserObj) 
    .subscribe((result)=>{ 
     this.logger.debug("checking data of success " +JSON.stringify(result)); 

    }); 
    } 
} 

这里我的结果是给我不确定

在我的服务,如果我映射这样的,如果我申请托架我得到不确定的,它工作正常.map((result:Response)=>result.json())

能有人帮我了解我观察到在angula.io检查了,但我觉得很难理解有

回答

3

缩写形式返回expression隐含

(param) => expression; 
结果

带括号的长格式支持多种语句,但您必须明确地使用return

(param) => { 
    let x = this.doSomething(); 
    return x; 
} 
+0

你可以在这里看到'post(url:string,data:any):Observable '我试图返回可观测值,如果我尝试返回x,就像你说的那样意味着我不返回任何可观察值。所以根据你的回答它返回的是什么帮助 –

+0

这只是一个通用的例子。在你的情况下,只需在'result.json()'之前添加'return' –