[英]How can i get data from firebase
我想通過搜索欄進行用戶搜索。當我輸入姓氏時,如果有匹配項,我應該收到有關用戶的數據,但我不知道如何。
這是我的嘗試
searchBar(){
let a=app.database().ref('users/'+app.auth().currentUser.uid).orderByChild('/surname').equalTo('Крюкин');
console.log(a);
}
這是數據的結構
嘗試以下操作:
searchBar(){
let a=app.database().ref('users');
a.orderByChild('surname').equalTo('Крюкин').on('value',((snapshot) => {
snapshot.forEach((childSnapshot) => {
console.log(childSnapshot.val());
});
}
首先,您沒有使用用戶 ID,這是在數據庫中使用push()
生成的隨機 ID。 因此,您需要使用forEach()
來訪問數據。
檢查指南:
https://firebase.google.com/docs/database/web/read-and-write
您沒有從 firebase 中准確讀取數據。
您應該創建一個句柄,在您的情況下創建一個句柄,然后在該句柄上注冊value
事件偵聽器,下面的代碼來自官方文檔
ref.once('value', function(snapshot) {
snapshot.forEach(function(childSnapshot) {
var childKey = childSnapshot.key;
var childData = childSnapshot.val();
// ...
});
});
在你的情況下,你應該只是
a.on("value",list=>{list.forEach(...)})
您也可以訂閱未來的 child_added/removed/updated 事件
這是文檔
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.