我在这里有一个组件声明数字数组public numbers :number[] =[];
并给出服务响应中数字数组的值并得到10,并且在ngInit块之后它显示为未定义
app.component.ts
export class AppComponent implements OnInit {
public numbers :number[] =[]; // here declare the variable
public numberss :Iproduct[]
ngOnInit(){
// here call the service
this._productService.getproducts().subscribe((response) => {this.numberss = response;
this.errornumber = 10; // here ressign the value
}
}),(err)=> {this.errorMsg =<any>err};
} // end of ngInit
// here is the 3rd party chart js pass the this.errornumber gets undefined
public doughnutChartOptions: any = {
elements: {
center: {
text:this.errornumber +"% <br>products" ,
}
}
};
} // end of component
这里未定义原因:text:this.errornumber
答案 0 :(得分:1)
当doughnutChartOptions被定义时,这个时候还没有存在这个。错误数字还没有存在,所以它是未定义的。在通过服务返回产品之后,它将被创建并初始化。因此,您应该创建doughnutChartOptions字段以进行订阅。
Example