我是一个用搜索栏构建Firebase React社交媒体应用程序的人,我希望我的搜索栏根据输入的值显示用户的建议。如果我输入"F"我希望Foo然后在Bar下面,很像任何社交媒体搜索栏,过滤用户并返回相关的。我在理解Firebase查询和什么适合这个方面有困难。
DB的布局为用户集合表示用户的文档文档
上的用户名属性const searchUser = async (text) => {
const queryUsers = [];
if (text !== '') {
try {
const usersRef = collection(firestore, "users");
const q = query(usersRef, orderBy("username"),startAt(text.toLowerCase()),limit(5))
const querySnapshot = await getDocs(q)
querySnapshot.forEach((doc) => {
queryUsers.push(doc.data())
})
} catch (error) {
console.error(error);
}
}
console.log(queryUsers);
return queryUsers;
};
我尝试了各种各样的查询,但没有一个工作,我希望得到所有的用户排序的字符串的值被发送到查询
发现问题,用户名以大写字母保存。不确定这个查询是否是最好的查询。