我无法在html页上检索地址表的详细信息。我有一个错误:错误错误:“尝试与'[对象对象]进行比较时出错”。仅允许使用数组和可迭代的对象“ 控制台会显示要恢复的项目,但无法检索页面
服务地址
adresses: Adresse [] = [];
adresseSubject = new Subject<Adresse[]>();
constructor() { }
emitAdresse(){
this.adresseSubject.next(this.adresses);
}
getAdresse(){
firebase.database().ref('adresse/' + firebase.auth().currentUser.uid )
.on('value', (data)=>{
this.adresses = data.val() ? data.val() : [];
console.log();
this.emitAdresse();
});
}
第ts页
adresses : Adresse[];
adresseSubscription: Subscription;
constructor(private adresseService: AdresseService, private router: Router) {}
ngOnInit(){
this.adresseSubscription = this.adresseService.adresseSubject.subscribe(
(adresses: Adresse[]) => {
this.adresses = adresses;
}
);
this.adresseService.getAdresse();
this.adresseService.emitAdresse();
}
html
<ion-card *ngFor="let adresse of adresses; let i = index" (click)="onViewAdresse(i)">
<ion-card-content>
<ion-row>
<ion-col size="9" >
<!--<ion-col size="9" (click)="goTo(adress)">-->
<div><b>{{adresse.prenom}} {{adresse.nom}} </b></div>
<div>{{adresse.commune}}</div>
<div>{{adresse.numeroF}}</div>
</ion-col>
<ion-col size="3">
<div class="color-edit"><b>Modifier</b></div>
</ion-col>
</ion-row>
</ion-card-content>
</ion-card>
谢谢
答案 0 :(得分:1)
使用空数组初始化adresses
。 ngFor
与数组一起使用,直到订阅了adresse
,并且您的代码中未定义adresses
。
尝试这样:
adresses : Adresse[] = []