【问题标题】:Accessing $firebaseObject Keys访问 $firebaseObject 键
【发布时间】:2016-07-28 07:42:38
【问题描述】:

我有一个使用 $firebaseObject 的简单 angularfire 查询,如下所示:

var obj = $firebaseObject($firebaseRef.accounts.orderByChild('user_id').equalTo("123"));

$loaded 中返回的对象如下所示:

{$$conf: Object, $id: "accounts", $priority: null, -KEa4maSq8fCB52DNEM9: {user_id: "123", email: "test"}}

我的问题是如何在不知道对象密钥 -KEa4maSq8fCB52DNEM9 的情况下访问例如电子邮件密钥?我的 $firebaseObject 使用不正确吗?

【问题讨论】:

  • console.log(obj.email);
  • @AndréKool 为我返回 undefined
  • 你是直接放在getting the firebase object下面的吗?因为那将返回 undefined 因为它是一个异步方法。试试 obj.$loaded(function () { console.log(obj.email); })
  • 这是我正在使用的。两者都返回未定义。我应该提到我正在使用最新的 angularfire 库。 obj.$loaded(function(account) {console.log(obj.email); console.log(account.email); });
  • @StevenGlasser 你找到解决方案了吗?我这里也有类似的问题

标签: firebase angularfire firebase-realtime-database


【解决方案1】:

您可以使用 $firebaseArray 代替 $firebaseObject :

var obj = $firebaseArray($firebaseRef.accounts.orderByChild('user_id').equalTo("123"));

那么你应该像这样返回承诺:

obj.$loaded().then(function(){
return obj[0];
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-12
    • 2016-04-16
    • 1970-01-01
    • 1970-01-01
    • 2013-08-29
    相关资源
    最近更新 更多