原本想通过where查询,如果usr_info中包含某个username的话,就提示查找到该用户。一开始没反应过来,在小程序云开发的数据库查询中,where({username:"派大星"}) 如果派大星用户名不存在的话,也会得到一个集合,只不过这个集合的长度为0而已。所以最后判断某个用户是否存在的话,应该判断的是data.length的长度?
db.collection('user_info').where({username:pageData.data.nickname}).get().then(res=> {
if(res.data.length==0){
console.log("数据库中无该用户记录,请核实nickname");
wx.navigateTo({
url: '../Error/Error',
})
}else{
………………………………
}
比如上面就是通过 res.data.length==0 这个条件来判断是否存在包含了username为nickname的用户,长度为0意味着不包含!
还有一个就是,wx.navigateTo 和 wx.navigateBack的使用,官方文档是这样:https://developers.weixin.qq.com/miniprogram/dev/api/route/wx.navigateTo.html
我比较感兴趣的是,如果在A页面填了很多的信息,但是因为其中的某项信息填错了,点击提交时跳转至错误提示页面Error,那么这时应该返回到A页面修改出错的信息,如果使用的是navigateTo的话,回到A页面时看到是一个一干二净的页面,但是使用navigateBack回去时得到的是有上一次填写的信息的页面A,这好像跟小程序页面存储方式有关,以堆栈的形式(我不知道是什么,我也不敢问)