使用错误的_openid搜索也能正常返回结果
老师好:
我通过异常的_openid去搜索,也能正常返回,请问是为什么?
// pages/myInfo/myInfo.js
const db = wx.cloud.database();
Page({
/**
* 页面的初始数据
*/
data: {
login_user_info:[],
user_registered:0
},
search_openid: function (openid) {
//const i = 0;
db.collection('user').where({
/* 这里先记录一下,使用错误的openid也能正常返回。 */
_openid: '111'
}).get().then(ress => {
console.log("search_openid success.");
console.log(ress.data);
if (0 == ress.data.length)
{
this.setData({
login_user_info: [],
user_registered:0
});
}
if (1 != ress.data.length)
{
console.log("too many user get, error");
}
else
{
this.setData({
login_user_info:ress.data[0],
user_registered: 1
});
}
}).catch(error => {
console.log('search_openid failed, error = ');
console.log(error);
})
},
getOpenId: function () {
wx.cloud.callFunction({
name: 'login'
}).then(res => {
let user_openid_tmp = res.result.openid;
console.log("getOpenId result = " + user_openid_tmp);
this.search_openid(user_openid_tmp);
}).catch(error => {
console.log(error);
})
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
this.getOpenId();
},
打印值:
{_id: "f1006ad85d221c2502f43b1e4d1e140b", _openid: "owNmp5cYUueEgYrC_oND*********", age: 33, name: "test_name"}
length也等于1。
当数据库存在两个不同_openid的数据时,返回值和上述相同。
user信息是通过如下方式添加的:
insert:function(){
db.collection('user').add({
data:{
name:'test_name',
age:23
}
}).then(res=>{
console.log(res);
}).catch(err=>{
console.log(err);
})
},