4

看了你做的 Firebase / Angular 视频,立刻对我刚刚开始的项目感到非常兴奋。我正在努力解决的一件事是如何在子级别选择数据。我的意思是:说我有这样的事情:

Firebase 数据截图

如何在不为每个搜索词创建大量索引的情况下选择代理“agent_1”的所有记录和/或 box_id 大于 600(加上其他字段)的记录?我真的不想将所有数据下载到客户端,然后遍历记录,因为最终会有很多数据。

最终,应用程序应该能够同时过滤不同字段的数据。例如,我会有一个代理选择框,它可能会返回所有 agent_1 记录。然后我会添加过滤器“所有 id > 600 的盒子”,然后可能会添加“盒子重量 > 24kg”等。

从我读过的内容看来,这只能通过为每条记录设置一个 id 字段,然后为每个想要搜索的字段设置一个索引数据集来实现。这对于一个领域来说已经足够简单了。但是,我想用更多字段过滤数据的唯一方法是获取下一个索引数据集的 id 并在客户端上进行过滤。

我在这种方法上是对的吗?似乎很啰嗦。

能够做到这一点会很棒: https ://xxxxx.firebaseio.com/boxes/?agent=agent_1/?box_id >600

只是一个想法!:-)

谢谢!

4

1 回答 1

0

第一个导入角度如下

import { AngularFireDatabase } from "angularfire2/database";

也导入 app.module.ts

其次将数据库注入您的构造函数中

    constructor(private database:AngularFireDatabase ){
    const rootRef = database.database.ref();
   var data= rootRef.child("boxes").orderByChild("agent").equalTo("agent_3")
    } 
于 2018-03-16T10:08:50.287 回答