如何判断你是每天的首次打开小程序,并进行签到提示?

发布于 2022-09-11 22:34:54 字数 390 浏览 13 评论 0

wx.setStorage({

key: 'sign_in',

data: dateFormat(new Date(), "yyyy-MM-dd")

});

this.sign_in = wx.getStorageSync('sign_in')//在storage里取数据

console.log(this.sign_in,'sign_in')

if (this.sign_in == null){

wx.showToast({

title: '签到成功',

icon: 'success',

duration: 2000

})

这样不可以,应该怎么判断this.sign_in才可以只签到首次

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

幸福丶如此 2022-09-18 22:34:54

我们之前做是后台返回,用户是否为首次打开小程序的一个参数, 也可以进入小程序就记录一下事件戳, 如果当前事件戳为昨天的, 那就说明今天第一次登陆, 别忘了更新这个时间戳, 缺点就是没法跨平台, 或是用户清除缓存就判断不准了, 所以还是建议后台来做.

三岁铭 2022-09-18 22:34:54

改成“如果用户当天没签到,则弹出签到提示”怎么样,这样的话后台返回个flag就行了,感觉会比较容易判断。

城歌 2022-09-18 22:34:54

以下只是思路:

  1. 用户每次登录都在用户数据库中记录一个时间戳 time
  2. 假设 a = 今天 00:00:00 的时间戳,假设 b = 今天的 23:59:59 的时间戳
  3. 如果 time <= a,那么用户今天就是第一次登录。
  4. 如果 a <= time <= b,那么用户今天就不是第一次登录。

登录数据还是保存在服务端比较合适,否则用户换了手机或者清理了本地数据,就又变成第一次登录了。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文