Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Firebase-获取包含_Javascript_Angularjs_Firebase_Angularfire - Fatal编程技术网

Javascript Firebase-获取包含

Javascript Firebase-获取包含,javascript,angularjs,firebase,angularfire,Javascript,Angularjs,Firebase,Angularfire,我有一个firebase模型,其中每个对象如下所示: done: boolean | tags: array | text: string 每个对象的标记数组可以包含任意数量的字符串 如何获取具有匹配标记的所有对象?例如,查找标记包含“email”的所有对象。随着API的继续扩展,许多更常见的搜索场景,例如按属性搜索(如标记数组所包含的)将烘焙到Firebase中 同时,你也有可能自己成长。根据您的问题,一种方法是简单地用匹配的记录列表“索引”标记列表: /tags/$tag/record_i

我有一个firebase模型,其中每个对象如下所示:

done: boolean
|
tags: array
|
text: string
每个对象的
标记
数组可以包含任意数量的字符串


如何获取具有匹配标记的所有对象?例如,查找
标记
包含“email”的所有对象。

随着API的继续扩展,许多更常见的搜索场景,例如按属性搜索(如标记数组所包含的)将烘焙到Firebase中

同时,你也有可能自己成长。根据您的问题,一种方法是简单地用匹配的记录列表“索引”标记列表:

/tags/$tag/record_ids...
然后,要搜索包含给定标记的记录,只需对标记列表进行快速查询:

new Firebase('URL/tags/'+tagName).once('value', function(snap) {
    var listOfRecordIds = snap.val();
});
这是一个非常常见的NoSQL咒语——在最初的编写过程中投入更多的精力,以使以后的读取更容易。这也是一种常见的方法(也是大多数SQL数据库在内部使用的一种更为复杂的方法)


另请参阅上文提到的post Frank,因为这将帮助您扩展到更高级的搜索主题。

您的问题与类似,因此一旦得到答案,它们可能会合并。类似的内容是否已集成到Firebase API中?我似乎在文档中找不到任何东西,而这个S/O线程是这样搜索的热门之一。