我使用请求API的结果创建多个数组。这是我按下按钮时调用的组件方法。
ngOnInit() {
// GetListeAnomalies(start_date : string, end_date : string) -> return an array this.servicePS.getListeAnomalies("2019-10-08", "2019-10-08").then( (anomalies : any) => {
for (let anomalie of anomalies){
switch (anomalie.type_anomalie) {
case "erreur_deltaT_recurrent": {
this.tab_delta_T_recurrent.push(anomalie);
break;
}
case "erreur_absence_emission": {
this.tab_absence_emission.push(anomalie);
break;
}
case "erreur_delta_T_trop_grand":{
this.tab_deltaT_trop_grand.push(anomalie);
break;
}
case "erreur_capteur_batterie_faible":{
this.tab_capteur_batterie_faible.push(anomalie);
break;
}
case "erreur_device_a_remplacer_grande_derive":{
this.tab_device_a_remplacer_grande_derive.push(anomalie);
break;
}
default: {
this.tab_other.push(anomalie)
}
}
}
}
) } 然后,我想在名为“ tableau-anomalies”的组件中传递这些数组。所以我用这行:
<app-tableau-anomalies [tabValeurs]="tab_delta_T_recurrent"> 在我的组件中,我尝试使用Input值,但是此值未正确初始化。查看我组件的代码(和我的注释)
export class TableauAnomaliesComponent implements OnInit {
@Input() tabValeurs: any;
constructor() { }
ngOnInit() {
console.log(this.tabValeurs.length); //Return 0
console.log(this.tabValeurs); //Return CORRECTLY my array with my data.
for (let anomalie in this.tabValeurs){
console.log(anomalie); //This iteration is not called --> no return, not even 'undefined' is written in the console.
}
} } 我认为有像Promise或Subscribe这样的解决方案吗?但是我不知道该如何使用它……那么您能帮我吗?您有解决方案的主意吗?
提前致谢 :)
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。