使用AngularFirebase / ionic2

时间:2017-04-11 11:36:39

标签: javascript firebase firebase-realtime-database ionic2 angularfire2

我在渲染映射到observable的数据时遇到问题。

这是我的代码的外观:



// ChatService.ts
getChats() {
    return this.authService.getUid().then(uid => {
        let chats = this.af.database.list(`/users/${uid}/chats`);
        return chats;
    });
}

// Chatcomponent.ts
chats: FirebaseListObservable<any[]>;

this.chatService.getChats()
    .then(chats => {
        this.chats = chats.map(users => {
            return users.map(user => {
                user.info = this.af.database.object(`/users/${user.$key}`)
                return user;
            });
        });
    })
   
&#13;
//The HTML File
// chat.html
<ion-item-sliding *ngFor="let chat of chats | async" (click)="openChat(chat.$key)">
  <p>{{chat.$key}}</p>
  <span>{{(chat.info| async).displayName}}</span>
</ion-item-sliding>
&#13;
&#13;
&#13;

现在,在呈现页面时,它会正确显示聊天。$ key,但chat.info.displayName不会呈现。

我在这里做错了什么?

1 个答案:

答案 0 :(得分:0)

问题出在html模板中。

我将{{(chat.info | async).displayName}}更改为{{(chat?.info | async)?. displayName}}