首先,这是一个Angular2应用程序。我刚刚开始使用Angular2和Firebase进行构建。我也使用AngularFire2。我知道我的服务正在工作,因为我可以在订阅后打印出blog.title
就好了。但那是我可以访问结果的唯一地方。在其他地方,它给我一个undefined
错误。无论是在{{}}模板还是在类中使用它,我都会得到相同的结果。我不确定我做错了什么。我也是新的观察对象。无法访问设置外的firebaseObjectObservable
export class BlogEditComponent implements OnInit {
blogForm: FormGroup;
blog$: FirebaseObjectObservable<Blog>;
blog: Blog;
constructor(private route: ActivatedRoute,
private router: Router,
private fb: FormBuilder,
private blogService: BlogService) { }
ngOnInit() {
this.isNew = false;
this.blog$ = this.blogService.getBlogFromId(this.route.snapshot.params['id']);
this.blog$.subscribe(snapshot =>{
this.blog = snapshot;
console.log(this.blog.title); //prints out fine
});
console.log(this.blog.title); //throws error here
}
}
BlogService
getBlogFromId(id: String): FirebaseObjectObservable<Blog> {
return this.af.database.object('blogs/' + id);
}
谢谢。我应该更清楚地知道。我一直使用Android处理后台线程上的网络调用,但出于某种原因,这并没有为我点击。 –