Firebase database 在 web 上面的基礎運用 (搜尋資料內容)


我們要在 firebase database 中取得資料,其實可以利用 key 的方式取得。就會非常的省事。只需要指定好 ref 的路徑。像這樣:

firebase.database().ref("/member/key").on("value",function(data){
 console.log(data.val());
})

但是我們並不是一定會拿到key,很多情況下我們要搜尋某個值的存在,例如要找人名或電話號碼之類的。這時候我們需要另一個方式來達成:


 firebase.database().ref("/member").orderByChild("mobile").equalTo("我的電話號碼").on('value', function(data) {
    console.log(data.val());
  });

這時候 firebase 就會去幫你找出裡面的節點 mobile 是 我的電話號碼的資料啦!
其中 orderByChild 就是去找這個節點
equalTo 就是符合的資料內容


相關資料
Firebase database 在 web 上面的基礎運用 (讀取資料)
Firebase database 在 web 上面的基礎運用 (新增資料)
Firebase Doc

留言

劉騏源寫道…
您好我嘗試使用
firebase.database().ref("/member").orderByChild("mobile").equalTo("我的電話號碼").on('value', function(data) {
console.log(data.val());
});

但是我會出現Consider adding ".indexOn": "value" at /phone/name/ 的error
想詢問在firebase中rule要如何修正呢??(因為我想搜尋某個節點下的數值,再rule節點中需要設定哪個呢?是最高節點嗎?)
周駿憲寫道…
會出現這個問題是要在規則那邊下沒錯
你可以看一下這邊
Index Your Data
劉騏源寫道…
您好我似乎無法開啟您的網頁(只能看到部分),查詢您的回應!麻煩您了