Попытка выполнить запрос типа SELECT для извлечения данных, но с использованием Firebase и React Native.
У меня есть следующая структура в моей базе данных Firebase:
{
"items" : {
"1234" : {
"value1" : 420,
"value2" : 69,
"ProductID" : 1234
},
"5678" : {
"value1" : 250,
"value2" : 12,
"ProductID" : 5678
},
"91011" : {
"value1" : 9001,
"value2" : 5,
"ProductID" : 91011
}
}
}
Я использую следующеекод, чтобы попытаться получить конкретный идентификатор продукта
firebaseDB.ref("/items/")
.orderByChild("ProductID")
.equalTo(data)
.once("value", snapshot => {
if (snapshot.exists()){
const userData = snapshot.val();
console.log("INFO ::: Exists!", userData);
}
else {
console.log("INFO ::: No match!!!");
}
Теперь моя проблема в том, что я не могу выбрать данные.Я думаю, что это проблема с моим запросом, так как я передаю идентификатор 1234, и он не находит этот идентификатор продукта.
.equalTo(data) <---- is how I'm passing the product id
Это то, что напечатано в моих журналах:
[11:43:19] [FIREBASE] p:0: Listen called for /items{"ep":"1234","i":"ProductID","sp":"1234"}
[11:43:19] [FIREBASE] p:0: Listen on /itemsfor {"ep":"1234","i":"ProductID","sp":"1234"}
[11:43:19] [FIREBASE] p:0: {"r":2,"a":"q","b":{"p":"/items","q":{"sp":"1234","ep":"1234","i":"ProductID"},"t":1,"h":""}}
[11:43:19] [FIREBASE] p:0: handleServerMessage d {"p":"items","d":{"1234":{"value1":420,"value2":69,"ProductID":1234},"5678":{"value1":250,"value2":12,"ProductID":5678},"91011":{"value1":9001,"value2":5,"ProductID":91011}}}
[11:43:19] [FIREBASE] event: /items:value:null
[11:43:19] [FIREBASE] p:0: Unlisten called for /items {"ep":"1234","i":"ProductID","sp":"1234"}
[11:43:19] [FIREBASE] p:0: Unlisten on /items for {"ep":"1234","i":"ProductID","sp":"1234"}
Возможно, мне следует попробовать изменить "значение", которое я передаю при вызове .once, но я не уверен .... Есть идеи?
Спасибо
Решенная проблема:
Мухаммед хорошо дал решение, которое позволило получить данные.Что я упускал из виду, так это то, что я использовал строку для запроса своих данных, а данные, которые я искал, были числом.