0
これについて多くの質問がありますが、多くのヒントを試してみると問題は解決しません。角度のあるHttpを観測可能に取得
私が観察を返すGET実装:私は未定義常に購読を取得しようとすると
public getEstatisticasPara(motorista:Motorista): Observable<EstatisticaAvaliacao> {
let params = new URLSearchParams();
params.set(Config.ESTATISTICA_AVALIACAO_REQUEST_PARAM, motorista.getId().toString());
let options = new RequestOptions({ headers: this.headers, params: params });
return this.http.get(this.path, options)
.map((res) => res.json)
.catch(this.handleError);
}
を:
atualizaMediaAvalicaoes(){
let motorista:Motorista = FlyweightFactory.getInstanceOf("motorista");
motorista.setId(1);
this.estatisticaAvaliacaoProvider.getEstatisticasPara(motorista)
.subscribe((res)=>{
console.log(JSON.stringify(res));
let estatisticaAvaliacao:EstatisticaAvaliacao = EstatisticaAvaliacao.fromJson(res);
this.storage.set("mediaAvaliacao", estatisticaAvaliacao.getMedia());
},(err)=>{
console.log(err);
});
}
ネットワークコンソールショー正しい応答を...なぜ未定義?
.map((res) => res.json())
お知らせ追加の括弧:=/
古い 'Http'サービスや新しい' HttpClient'を使っていますか?そしてあなたの 'res'オブジェクトはどのように見えますか? 'res.json'が奇妙に思えるからです。 – cyrix
HTTP: '@ angular/http'から{Http}をインポートします。 "totalCincoEstrelas":2、 "totalQuatroEstrelas":3、 "totalTresEstrelas":2、 "totalDuasEstrelas":1、 "totalUmaEstrela":0、 "media":3.75} –
これは '.map((res)=> res.json())'であるべきではありません。追加のかっこに注目してください。 – DeborahK