angular - Angular - 如何返回订阅数据
问题描述
我正在尝试使用 Ionic 和 Angular 返回从带有 firease 的查询中获得的数据,但数组返回“未定义”
QueryList (id: string ) {
this.db.collection('/list', ref => ref.where('id', '==', id)).valueChanges().subscribe(ref => {return ref});
}
返回数组的正确语法是什么?
解决方案
返回 observable 并在需要数据的地方订阅
QueryList (id: string ): Observable<any> {
return this.db.collection('/list', ref => ref.where('id', '==', id)).valueChanges();
}
零件
ngOnInit() {
this.someService.QueryList(id).subscribe(ref => {this.ref = ref});
}
数据是异步的,不可能同步返回值。
有关如何在此处访问异步数据的更多详细信息。
推荐阅读
- python - 为什么通过python中的过滤器时文件听起来很糟糕
- java - 如何存储和检索泛型类型
- spring-boot - org.hibernate.QueryException:在 [] 之前未索引 fromElement
- regex - 如何使用正则表达式替换子字符串中的特定字符?
- python - 无法使用 cpp 库初始化 pyarrow
- azure-databricks - 在 azure databricks 上将 spark 数据帧转换为 Delta 表 - 警告
- android - 如何在 Android ImageView 上制作彩色滤镜?
- c# - 在 ASP.NET MVC Core 中强制注销
- r - 如何将案例 ID 添加到列表中,直到它们的累积值达到 R 中的阈值?
- c# - 每 x 次移动一个游戏对象 x 次