我正在尝试根据名称搜索用户。如果名字是从名字给出但没有在字符串上搜索第二个名字,它会完美搜索。例如,第一个和第二个都保存在由空格分隔的一个值中 " John Smith"。如果搜索" john"或" jo"等它检索记录,但如果它的史密斯没有检索任何东西。 代码
var ref = firebase.database().ref().child('User').orderByChild("name").startAt(searchString).endAt(searchString + "\uf8ff");
$scope.usercollection = $firebaseArray(ref);
答案 0 :(得分:4)
使用您的查询通常只能获得以j,jo,joh,john等开头的结果... startAt方法“创建具有指定起点的查询”。因此,它会查看您的searchString变量如何启动。
目前Firebse中没有全文搜索机制。您将在网上找到实现这种机制的几种可能性,例如:
https://firebase.googleblog.com/2014/01/queries-part-2-advanced-searches-with.html