で、httpを使用してサーバーからデータを取得していますservice.ts
:
getAllCursenValue():Observable<Cursen[]>{
let cursen$ = this.http
.get(this.baseUrl,{headers: this.getHeaders()})
.map(mapCursen);
return cursen$;
}
function mapCursen(response:Response):Cursen[]{
return response.json().map(toCursen);
}
function toCursen(r:any):Cursen{
let cursen = <Cursen>({
id_boitier:r.id_boitier,
id_phase:r.id_phase,
date:new Date(r.date),
power:r.power,
voltage:r.voltage,
current:r.current,
phase:r.phase,
thd:r.thd,
acc:r.acc,
flags:r.flags,
added_info:r.added_info
});
return cursen;
}
私のコンポーネントでは、ハイチャートを使用してこのデータを表示したいのですが、問題は、ボタンをクリックしてもチャートに何も表示されないことです。クリックすると、データはまだ準備ができていないと思います
component.ts :
getCursenByDateTest(){
this.cursenService
.getCursenValueByDateTest("2016-7-30","2016-7-31")
.subscribe(p => {
this.cursens = p;
console.log(p)
console.log(this.cursens.length);
});
}
ボタンをクリックしたときの方法: コンソールは、オブジェクトを印刷する前に「GGGGG」と「PPPPP」を印刷します。
ChartLine(){
this.getCursenByDateTest();
console.log("GGGGGGGGGGGGGG");
console.log("PPPPPPPPPPPPPPPPPP",this.finaldate1);
this.options1 = {
chart: {
type: 'area'
},
title: {
text: 'Area chart with negative values'
},
xAxis: {
categories: this.voltagesMax
},
credits: {
enabled: false
},
series: [{
name: 'John',
data: this.voltagesMax
}]
};
}
チャートに送信する前にすべてのデータを取得するにはどうすればよいですか?