我有如下查询
var db = admin.database();
var ref = db.ref('orders') ref.orderByChild("order/_date").startAt(begDate).endAt(endDate).once("value").then(
(resp) => {
..
}).catch(
(err) => console.log('failed in sales report:' + err)
)
它扔到下面
TypeError: Cannot convert undefined or null to object
数据如下所示
orders: {
"-LNMPXMb1SGSnkDaEMQO" : {
"order" : {
"_cgst" : "11.90",
"_date" : "1538368446413",
"_location" : "kapashera",
"_orderNumber" : "VikKumar-21247",
"_orderStatus" : "Delivered",
}
},
在执行时,begDate和endDate是:
begDate:1538352000000 endDate:1538438400000
所以有两个问题: 1,错误本身如果没有匹配项,如何避免引发错误? 2.当日期值在begDate和endDate之间时,为什么上面的记录不匹配?
答案 0 :(得分:1)
您可能所做的错误与昨天的其他问题相同:firebase realtime DB querying date between 2 dates does not match anything
因此,原因可能是因为begDate
和endDate
是数字,但是您将_date
作为字符串存储在数据库中。
答案 1 :(得分:0)
保存到fb时尝试使用row
toISOString
和
var _date = new Date().toISOString()