问题标签 [angularfire5]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
21 浏览

angular5 - 如何为 AngularFireDatabase 生成子密钥?

我有模式:

并且有一些服务正在生成父密钥:

如何在“childItems”中生成密钥?当我添加属性值时,我需要为此元素创建唯一键。请帮我找到解决办法。

0 投票
0 回答
66 浏览

angular - 如何处理angularfire5中的关键属性

众所周知,版本 5 中的 angularFire api 发生了重大变化。例如,在我的数据服务中,我以前有一个这样的方法:

现在,在升级到 angularFire5 后,我遇到了以下问题: 因为我希望将所有与 firebase 相关的东西都封装在我的服务中,并且不会泄漏到应用程序的其余部分,所以我想从服务中公开 rxjs Observables。因此,我要么必须valueChanges()getBookings()- 中添加一个调用,但随后我会松开$key(稍后在更新中需要它),或者将snapshotChanges()其映射到如下所示的位置:

后者(有点)需要我通过一个关键属性来扩展我的 Booking 模型,我可以getKey相应地调整我的方法。

但是现在尴尬的部分来了:更新预订将导致 Firebase 数据库中出现奇怪的数据结构,其中键以“list-key”和“list-object”的键属性形式出现。

推荐的方法是什么?我看到了两个选项,这两个选项都让我不太满意:

  • 在更新之前从Booking实例中删除属性
  • 不添加它的预订模型?然后我们有一个无类型的属性和“魔法”泄漏到服务之外的应用程序。
0 投票
1 回答
401 浏览

firebase-realtime-database - 如何在 Ionic 中操作和打印嵌套 firebase 列表中的数据

我正在使用 Ionic 和 Firebase,我在链接数据方面遇到了几个问题,无论是操作还是打印。我已经阅读了文章并观看了几个版本之间不同方法的视频,但还没有解决它,我必须认识到我现在有一个可怕的混乱(我当然是初学者)。让我解释更多细节:

版本

“angularfire2”:“^5.0.0-rc.6”
“firebase”:“^4.10.1”
“离子角”:“3.9.2”,

Firebase 结构示例

Firebase 结构示例

我需要打印的内容

现在,我可以使用“-L5uzsn0C4-FYiS7HiY”字段来检索和打印订单列表,当然“用户”字段显示为“-L5uzsn0C4-FYiS7HiY”,但我需要显示用户“卡洛斯”的名称。

方法

  • 首先,我尝试显示嵌套的 *ngFor,例如:

...但没有像始终打印的那样正确显示,即使该订单没有用户。

  • 之后尝试打印一个函数getUserName(order.payload.val().user),但似乎不可能在那里调用/打印函数......

  • 之后,我调查了是否有一种方法可以使用“JOINS”向 Firebase 抛出查询,就像在 SQL 数据库中一样。看了几个视频,没有找到解决办法。例如在他们使用的这个官方视频中,db.child但这个功能似乎不可用,我想是版本问题......

  • 对于最后一次尝试,我认为最好的方法是通过代码检索订单列表,然后使用 list.user 检索用户对象并在打印之前将其推送到列表中,但这非常困难。但我什至无法操作检索到的列表的数据!

我检索订单列表:

此时ordersList已正确打印,*ngFor但我想通过代码访问键和值。我观看使用Ionic3 和 angularfire5 的视频.map(见 2:02 分钟),我正在使用此代码,但它不起作用,没有检索到错误,但什么也不打印

  • 你能帮我检索列表和转换值吗?
  • 是否有任何可用的 angularfire5 文档供我观看更新信息?我看过很多以前版本的示例。

提前致谢。

相关问题 相关问题似乎是为以前的 angularfire 版本开发的,因为我无法使用如图所示的“.map”函数 显示从 firebase 到 ionic 的嵌套数据

0 投票
1 回答
476 浏览

firebase - 如何使用 angularfire2 + 实现 child_removed 事件

我正在使用 firebase + angularfire2 测试谷歌地图。

Firebase 数据结构

使用 JS + firebase,所有 3 个事件都运行良好。

但是对于 angularfire2,它的表现非常不同。

“child_removed”事件只返回没有删除子项的操作。为 removeMarkerUI 方法实现“child_removed”的最佳实践是什么?

0 投票
1 回答
287 浏览

javascript - 如何使用 AngularFire 存储知道上传何时完成

我正在尝试使用 AngularFire 将函数从使用本机 Firebase 库转换和上传到 AngularFire2 v5 库。我如何知道上传何时完成,以便之后可以运行其他命令。

这成功地工作。到目前为止,我正在尝试实施

但我似乎无法添加.then(() => {})声明。

0 投票
2 回答
2021 浏览

firebase - 捕获 Angularfire2 v5 错误

我正在将 Firebase Storage 的使用转换为使用 Angularfire2 库(当前为 v5.0.0-rc.5-next),这意味着我现在使用的是 observables 而不是 Promise。

我怎样才能捕捉到错误storage/object-not-found并做出相应的反应?

这是我目前的代码,但我无法在其中添加一个catch作为我找到的一些示例。

0 投票
1 回答
88 浏览

angular - 更新列表后的AngularFire2内存泄漏

单击按钮后,我正在尝试在firebase中更新列表(增加列表中的值),但是,每当我单击按钮时,除非我关闭页面选项卡,否则该值会不断增加而不会停止。

0 投票
1 回答
69 浏览

angular - Angular Firestore - 如何在没有密钥的情况下获取文档

我正在使用 Angular Firestore,过去两天我一直在努力完成这项特殊任务。这是我需要的:当用户点击保存按钮时,我调用:

到目前为止一切顺利,当我调用更新和创建方法时它工作正常。我的问题是在首先调用“保存”功能之前。我有这个架构:

我需要做的是:

如何通过从 Angular Firestore 获取组来实现这一目标?

0 投票
1 回答
343 浏览

firebase - 如何在 AngularFirestore 的 where() 方法中表达嵌套字段

我正在使用 firestore where() 方法来测试嵌套字段与另一个值的相等性。嵌套字段位于文档结构中:Apartments/Apartment/property/address/ locality_short

这是我目前的做法(在下面的代码中),但它没有返回任何文档: //There import import { AngularFirestore} from 'angularfire2/firestore';

//注入构造函数(private afs: AngularFirestore){}

//根据是否 //apartment.property.address.locality_short == search_object.locality_short 来检索公寓的方法

search(search_obj: Search):Observable{ return this.afs.collection('/Apartments', ref => ref.where( property,address,locality_short, '==', 'search_obj.Address.locality_short')).valueChanges() }

0 投票
1 回答
565 浏览

ionic-framework - Ionic 3 angularfire2 打印出 [object Object] 数据

我有一个任务管理应用程序,我不希望用户能够在每个任务部分中看到他们的任务,就像在照片中一样:单击此处查看照片

我可以从数据库中获取数据并以 JSON 格式打印出来,正如您在照片中看到的那样,我将其标记为“从数据库获取任务”,但问题是我无法像“仅演示”那样显示它可以在照片中看到。

我正在使用angularfire2从 firebase 实时数据库中获取数据。

这是数据的控制台:数据控制台

以下是提供者的代码:

以下是 .ts 文件中的代码:

以下是 HTML 文件的代码: