(Angular 4+;firebase+;service+;component)将变量从服务传递到组件
我想将变量“dataJSONparse”从服务发送到组件 服务(Angular 4+;firebase+;service+;component)将变量从服务传递到组件,angular,firebase,service,components,angularfire,Angular,Firebase,Service,Components,Angularfire,我想将变量“dataJSONparse”从服务发送到组件 服务 listOfUsers() { this.items = <FirebaseListObservable<any>>this.af.list('/user', { query: { orderByChild: 'name' } }).map((user) => { return user.map(user_data => { user_data.name;
listOfUsers() {
this.items = <FirebaseListObservable<any>>this.af.list('/user', {
query: {
orderByChild: 'name'
}
}).map((user) => {
return user.map(user_data => {
user_data.name;
user_data.mobile;
return user_data;
})
})
this.userDataQuery = this.items.subscribe(x => this.forx(x));
}
public dataJSONparse: any;
forx(x) {
this.dataStringify = JSON.stringify(x);
this.dataJSONparse = JSON.parse(this.dataStringify);
console.log("test print from service: ",this.dataJSONparse);
}
控制台错误
来自未定义组件的测试
来自服务的测试打印:数组[对象,对象,对象,对象,对象,对象]
您应该向组件返回一个可观察到的。即使在日志中,您也可以看到组件控制台在服务之前打印,这意味着它首先执行,因此未定义:)欢迎来到异步世界:D@AJT_82我能做些什么来解决它??如果你有很好的教程来帮助我,请在评论中发布:)
ngOnInit(): void {
console.log("test",this.heroservice.dataJSONparse);
}