【发布时间】:2017-08-14 21:02:28
【问题描述】:
我正在使用什么
- 角度
- Firebase
我正在努力实现的目标
问题
- 我目前正在使用解析器退回我的物品
- 是否可以将查询/排序合并到我的解析器中?
我的项目列表解析器
import { Injectable } from '@angular/core';
import { AngularFireDatabase } from 'angularfire2/database';
import { AuthService } from '../../user/auth.service';
import { ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';
import 'rxjs/add/operator/first';
import { Observable } from 'rxjs/Observable';
@Injectable()
export class ProjectsListResolver {
constructor(private database: AngularFireDatabase, private authService: AuthService) { }
resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<any> {
return Observable.create(observer => {
this.authService.user
.first()
.subscribe(user => {
this.database.list(`/project_list/${user.uid}`)
.first()
.subscribe(projectList => {
observer.next(projectList);
observer.complete();
});
});
});
}
}
项目组件 TS
ngOnInit() {
// Returns the data from the projects list resolver
this.activatedRoute.data
.subscribe((
data: { projectListData: any }) => {
this.projectsList = data.projectListData;
});
}
任何帮助将不胜感激!
【问题讨论】:
标签: angular firebase firebase-realtime-database angularfire