我在渲染映射到可观察量的数据时遇到问题。
这是我的代码的样子:
// 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;
});
});
})
//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>
现在,在呈现页面时,它会正确显示chat.$key,但chat.info.displayName不会呈现。
我在这里做错了什么?
问题出在 html 模板中。
在我将 {{(chat.info | async(.displayName}} 更改为 {{(chat?( 后,它起作用了。信息 |异步(?。显示名称}}