Javascript Firebase-JS Query-获取一个节点,其中子值有一个子值=xxx
我的firebase查询遇到了一个小问题。 我想得到所有我还没有看过的剧集。目前,我从firebase加载它们,并使用JavaScript中的过滤函数。但我想尽量减少从firebase下载的数据 因此,我只希望获得符合此dummycode标准的系列:Javascript Firebase-JS Query-获取一个节点,其中子值有一个子值=xxx,javascript,firebase,Javascript,Firebase,我的firebase查询遇到了一个小问题。 我想得到所有我还没有看过的剧集。目前,我从firebase加载它们,并使用JavaScript中的过滤函数。但我想尽量减少从firebase下载的数据 因此,我只希望获得符合此dummycode标准的系列: ref("series").orderByChild("seasons/*/episodes/*/episodeWatched").equalTo(false) 这是我在firebase中的结构的一个小输出 series > <
ref("series").orderByChild("seasons/*/episodes/*/episodeWatched").equalTo(false)
这是我在firebase中的结构的一个小输出
series >
<unique series id>
seriesName: string
seasons >
seasonCount: number
<season nummer>
episodes >
<episode number>
episodeName: string
episodeWatched: boolean
episodeAirDate: Date
我在上面的dummycode中遇到了一个通配符问题,我只获取特定节点的值,并且无法解析orderByChild函数
如果我能理解这个函数,我对此的理解是:
ref("series").orderByChild("seasons").orderByChild("episodes").orderByChild("episodeWatched").equalTo(false)
目前,我尝试了几种使用通配符的方法,目前唯一有效的方法是:
ref("series").orderByChild("seasons/0/episodes/0/episodeWatched").equalTo(false)
但这只是检查:是否检查了第一季的第一集
有人遇到过这个问题吗?我认为这是复制/重组数据库以优化读取的时候之一 用户/uid/notWatched:{ showId\u季节id\u epId:true
}我重新构造了一些数据,在序列的根位置有另一个标志,显示它是否被完全监视。谢谢你的思考方向。
ref("series").orderByChild("seasons/0/episodes/0/episodeWatched").equalTo(false)