Angular 角度及;Firebase-是否可以在解析器中使用查询?

Angular 角度及;Firebase-是否可以在解析器中使用查询?,angular,firebase,firebase-realtime-database,angularfire,Angular,Firebase,Firebase Realtime Database,Angularfire,我正在使用的内容 棱角的 火基 我正在努力实现的目标 按日期顺序显示项目(firebase“project_date”中的一个键。请参见下面节点标题的屏幕截图) 问题 我目前正在使用解析程序返回我的项目 是否可以将查询/排序合并到我的解析器中 我的项目列表解析器 从'@angular/core'导入{Injectable}; 从“angularfire2/database”导入{AngularFireDatabase}; 从“../../user/auth.service”导入{A

我正在使用的内容

  • 棱角的
  • 火基
我正在努力实现的目标

  • 按日期顺序显示项目(firebase“project_date”中的一个键。请参见下面节点标题的屏幕截图)
问题

  • 我目前正在使用解析程序返回我的项目
  • 是否可以将查询/排序合并到我的解析器中
我的项目列表解析器

从'@angular/core'导入{Injectable};
从“angularfire2/database”导入{AngularFireDatabase};
从“../../user/auth.service”导入{AuthService};
从'@angular/router'导入{ActivatedRouteSnapshot,RouterStateSnashot};
导入'rxjs/add/operator/first';
从“rxjs/Observable”导入{Observable};
@可注射()
导出类ProjectsListResolver{
构造函数(私有数据库:AngularFireDatabase,私有authService:authService){}
解析(路由:ActivatedRouteSnapshot,状态:RouterStateSnashot):可观察{
返回可观察的。创建(观察者=>{
this.authService.user
.first()
.subscribe(用户=>{
this.database.list(`/project\u list/${user.uid}`)
.first()
.订阅(项目列表=>{
观察员:下一个(项目清单);
observer.complete();
});
});
});
}

}
我用我的应用程序来实现这一点。首先,当您从Firebase获取数据时,它是json,因此您必须将其更改为array,然后必须根据日期对数组进行排序。这是排序功能:

 arr.sort((a: any [], b: any []) => {

        return (new Date (a[0]) .getTime() - new Date (b[0]).getTime()) ;
      });

如果你想要完整的代码,我可以发布。

我可以用我的应用程序发布。首先,当您从Firebase获取数据时,它是json,因此您必须将其更改为array,然后必须根据日期对数组进行排序。这是排序功能:

 arr.sort((a: any [], b: any []) => {

        return (new Date (a[0]) .getTime() - new Date (b[0]).getTime()) ;
      });

如果你想要完整的代码,我可以发布。

嘿,扎赫迈德。谢谢你这么快的回复。如果你不介意的话,那就太好了。我对这一点非常陌生,所以这是一个逐步学习的过程,如何与上面的代码集成将是非常棒的,谢谢。我刚刚更新了我的帖子,加入了我的项目组件文件中的代码,如果这能增加整体的工作方式的话。。。。这是链接:谢谢@ZAhmed。感谢您发布代码。不幸的是,这对我来说有点超前。(我一个月前才开始学这个东西。)嘿,扎赫迈德。谢谢你这么快的回复。如果你不介意的话,那就太好了。我对这一点非常陌生,所以这是一个逐步学习的过程,如何与上面的代码集成将是非常棒的,谢谢。我刚刚更新了我的帖子,加入了我的项目组件文件中的代码,如果这能增加整体的工作方式的话。。。。这是链接:谢谢@ZAhmed。感谢您发布代码。不幸的是,这对我来说有点超前。(我一个月前才开始学这个东西.)