【问题标题】:Reading dynamic array from Firebase从 Firebase 读取动态数组
【发布时间】:2017-09-05 20:02:45
【问题描述】:

我在 ionic3 有一个项目,其中我有 Firebase 阵列,如下所示。

List = {User3: true, User8: true, User9: false}

参数名称不固定,可以更改。所以当我收到上述格式的数组时,我只需要列出真实的用户。我需要一个数组如下。

User = {User3, User8,}

我应该在 for 循环中列出参数名称。

for(let item of List){
//I need to write item.User3 in order to retrive the value. But parameter name User3 is not fixed.
}

【问题讨论】:

    标签: arrays firebase ionic-framework firebase-realtime-database angularfire2


    【解决方案1】:

    您的List 不是“数组”。这是一个对象。它没有“参数名称”。它具有属性。要获取值为true 的属性(用户),请过滤您可以使用Object.keys 获取的对象的属性,以获得值为true 的属性。你可以用像

    这样的东西来做到这一点
    Object.keys(List).filter(user => List[user])
    

    您不能使用for...of。这是针对数组,而不是对象。

    您也可以只查询值为 true 的节点,您可以通过查阅 Firebase 文档了解如何操作。

    次要问题,但大写变量名是令人困惑和不标准的。通常大写的标识符用于类等。

    【讨论】:

    • 非常感谢您的解决方案。
    • 如果答案对您有帮助,请考虑支持@TapasMukherjee。否则其他 SO 用户可能会认为答案只是一种解决方法,实际上并不是解决 OP 的好方法。
    猜你喜欢
    • 2018-08-25
    • 1970-01-01
    • 2011-08-03
    • 1970-01-01
    • 2018-02-19
    • 1970-01-01
    • 2022-01-10
    • 2018-04-11
    相关资源
    最近更新 更多