小程序内要统计用户数量,但是发现有相同用户重复出现的情况!
于是用openID分类查看,的确是同openID的存在多个用户,怎么回事?是用户多次点击注册,重复提交吗?开始我以为是这样的,于是改进了注册页面,点击一次注册后就会自动跳转到首页,可是问题还是存在。
于是我查看其中的一个用户,对比他多次注册的不同之处,发现只有注册时间不同,而且时间挨得特别近,微秒范畴,这就不太可能是人工造成的了!
注册的代码如下:
//添加新注册用户到数据库
upload(filepath) {
var that = this
console.log('filepath:', filepath)
wx.cloud.database().collection('login_users').add({
data: {
avatarUrl: filepath,
nickName: that.data.name,
myTeam_id: '',
myTeamName: '',
user_level: 0,
admin_level: 0, //管理员级别
_createTime: (new Date()),
},
success(res) {
console.log('用户数据已新增入数据库', res)
wx.showToast({
title: '注册成功!',
icon: 'success',
duration: 1500
})
app.globalData.userInfo = {
avatarUrl: filepath,
nickName: that.data.name,
myTeam_id: '',
myTeamName: '',
user_level: 0,
admin_level: 0 //管理员级别
}
app.globalData.isLogin = true //已经注册过了
console.log('1111app.globalData.userInfo', app.globalData.userInfo)
},
fail(fai) {
wx.showToast({
title: '注册失败!',
icon: 'error',
duration: 2000
})
}
})
wx.switchTab({
url: '/pages/index/index'
})
求大神指点!!!!!!!!!!!!!!!!!!!
是不是注册的时候程序执行中,用户多次点击,程序执行需要一定的时间,这个时间内,用户点击了多次,应该拦截一下
//更新注册用户信息到数据库
if (app.globalData.userInfo) {
that.update(res.fileID); //更新用户登陆信息
} else
that.upload(res.fileID); //添加新注册用户到数据库
},
快速点击问题