真机调试和模拟器查询值不一样,真机忽略另一个字段的限制?
let month0 = myDate.getMonth() + 1;
if (month0 < 10) {
month0 = '0'+ (myDate.getMonth() + 1);
} else {
month0 = myDate.getMonth() + 1;
}
let month1 = myDate.getMonth() + 2;
if (month1 < 10) {
month1 = '0'+ (myDate.getMonth() + 2);
} else {
month1 = myDate.getMonth() + 2;
}
app.globalData.datasys0 = myDate.getFullYear() + '-' + month0 + '-' + myDate.getDate();
let datasys0 = myDate.getFullYear() + '-' + month0 + '-' + myDate.getDate();//当前日期
let datasys1 = myDate.getFullYear() + '-' + month1 + '-' + myDate.getDate();//下个月日期
let datasysstart = myDate.getFullYear() + '-' + month0 + '-' +'0';
let datasysend = myDate.getFullYear() + '-' + month1 + '-' +'32';
let gszhanghao0 = app.globalData.userid;
//var time0 = myDate.toLocaleTimeString();
//console.log("获取当前日期" , time0);
//let gsid = app.globalData.userid + app.globalData.datasys
const _ = db.command
db.collection('gscanteens').where({
gszhanghao : gszhanghao0, //真机调试把这个字段的限制给忽略了、、、、、、、、、、、、、、、
gscttime : _.gt(datasysstart).and(_.lt(datasysend)), //查询当月和下个月
}).get({
success: res => {
console.log(res.data)
this.setData({ //收集数据到ne中并返回
ne: res.data
})
},
fail(res) {
console.log("查询失败", res)
}
})
},
这个是模拟器打印的结果,模拟器打印是正确的。
[图片]这个是真机(红米K40和VIVO X9)调试和PC机(acer 笔记本)打印得到的结果: [图片] 以下是数据库字段 [图片] 不知道为什么会这样