即时通讯使用firebase,这是我数据库的示例
items:
yyy:
userId: aaa
qty: 2
zzz:
userId: bbb
qty: 1
profile:
aaa:
name: AAA
bbb:
name: BBB
我正致力于离子和angularfire2 . 我想在项目数据中使用userId检索配置文件中的数据 . 即时通讯使用我从这个link得到的代码,但它显示我null . 如何在一个 ngFor
async中显示项目和配置文件列表的数据 . 继承人的代码 .
import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
import { Item } from '../../models/item';
import { profile } from '../../profile/profile';
import { AngularFireDatabase,FirebaseListObservable } from 'angularfire2/database';
@IonicPage()
@Component({
selector: 'page-timeline',
templateUrl: 'timeline.html',
})
export class TimelinePage {
item = {} as Item ;
profile = {} as Profile;
item: Observable<any>;
constructor(
private afDatabase : AngularFireDatabase,
public navCtrl: NavController,
public navParams: NavParams) {
this.item = this.afDatabase.list(`/items`)
.snapshotChanges()
.map(changes =>
changes.map(c => ({
key: c.payload.key,
profile: this.afDatabase.object(`profile/${c.payload.val().userId}`)
.valueChanges(),
...p.payload.val()
}))
);
}
ionViewDidLoad() {
console.log('ionViewDidLoad TimelinePage');
}
}
我已经导入了这样的rxjs
import 'rxjs/add/operator/take';
import "rxjs/add/operator/map";
import "rxjs/add/observable/interval";
你能帮我解决吗?非常感谢 .