尝试使用Angular 4进行Firebase分页

尝试使用Angular 4进行Firebase分页,angular,firebase,pagination,Angular,Firebase,Pagination,每次单击nextentries按钮时都无法解决此问题返回多个观察值,并且下一个分页计数从包含最后一个条目开始。如果你能帮我,这是密码 nextentries(){ this.posts$ = this.posts$.switchMap(posts => { const startAt = posts[posts.length-1].$key; console.log(startAt); return this.articleService.loadNextPa

每次单击nextentries按钮时都无法解决此问题返回多个观察值,并且下一个分页计数从包含最后一个条目开始。如果你能帮我,这是密码

nextentries(){
   this.posts$ = this.posts$.switchMap(posts => {
    const startAt = posts[posts.length-1].$key;
    console.log(startAt);
    return this.articleService.loadNextPage(startAt, this.postsLimit);
  });
}
这些是我正在调用的服务中的方法

getAllArticles(query: FirebaseListFactoryOpts = {}): Observable<Article[]> {
      return this.db.list('/articles', query)
      .map(Article.fromJsonList).do(console.log);
       //.publishReplay().refCount()         
    }

loadNextPage(startAt: string, limit ){
    return this.getAllArticles({query: {
        orderByKey:true,
        limitToFirst: 2,
        startAt :startAt 
    }});
    //flatMap( posts => Observable.combineLatest(posts) )
}
getAllArticles(查询:FirebaseListFactoryOpts={}):可观察{
返回此.db.list(“/articles”,查询)
.map(Article.fromJsonList).do(console.log);
//.publishReplay().refCount()
}
loadNextPage(开始:字符串,限制){
返回此.getAllArticles({query:{
orderByKey:是的,
限制第一:2,
斯塔塔:斯塔塔
}});
//平面图(posts=>Observable.CombineTest(posts))
}