我有一個用服務結果填充串列的代碼:
dataList: number[]
getMethod(){
this.service.get().subscribe((res:any)=>{
this.dataList = res.dataList
})
}
在dataList和getMethod()的宣告之間,我宣告圖表:
public lineChartData: ChartDataSets[] = [
{ data: this.dataList, label: 'Label1' },
{ data: ..., label: 'Label2' },
];
但是會彈出以下錯誤:
Property 'dataList' is used before its initialization.ts(2729)
如果我將 dataList 實體化為[],錯誤將不再存在,但dataList將為空。我怎樣才能用從服務回傳的資料填充這樣的資料集?
uj5u.com熱心網友回復:
您必須初始化 dataList,因為現在您正試圖將 undefined 分配給 DataSet。在此之后,您必須在訂閱結束時更新圖表。您沒有附上完整的代碼,但我認為它看起來像這樣:
getMethod(){
this.service.get().subscribe((res:any)=>{
this.dataList = res.dataList
this.chart.update()
})
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/465906.html
