2017-06-19 55 views
0

此代码一直运行到passageiro.ts控制器在控制台上打印上面的数组。IONIC ng从火力点恢复数据

事实上,视图循环了一个空的项目。我做错了什么?

(2) [Object, Object] 
0 : Object 
id : "jMi0U0qT5yO1y04AyLynnQAJEvl1" 
nome:"Test1" 
__proto__ : Object 
1 : Object 
id : "v88qudbTpqeDcXWNHpqz0rOzZe92" 
nome : "Test2" 

服务

getPassageirosList(){ 
    let passageirosReturn = fb.database().ref('users'); 
    return new Promise((resolve, reject) => { 
     passageirosReturn.orderByChild("tipo_usuario").equalTo("passageiro").on('value', snapshot => { 
     let passageiros = []; 
     snapshot.forEach(snap => { 
     passageiros.push({nome: snap.val().username,id: snap.key}); 
     return false; 
    }) 
    resolve(passageiros); 
    }); 
}); 

控制器

ngOnInit(){ 
    this.passageirosService.getPassageirosList().then(passageiros => {this.passageiros = passageiros; console.log(this.passageiros)}); 
} 

查看

<ion-list> 
    <ion-item *ngFor="let passageiro of passageiros"> 
     <h2>{‌{pasageiro?.id}}</h2> 
    </ion-item> 
    </ion-list> 
+0

对于这个'返回false;'在'forEach'中是什么? – developer033

回答

0

在您看来,您可能想要在显示它之前检查是否有通道列表。 可能不是答案,但尝试添加一个* ngIf到你的列表。

<ion-list *ngIf="passageiros"> 
    <ion-item *ngFor="let passageiro of passageiros"> 
    <h2>{‌{pasageiro?.id}}</h2> 
    </ion-item> 
</ion-list>