小程序弹窗如何让它每日只弹一次
发布于 5 年前 作者 xiaochao 3334 次浏览 来自 问答

现在的弹窗是每次打开都弹窗

如何设计成每天弹出一次

类似弹窗签到那种

8 回复

利用本地存储,做个类似cookie的缓存,判断下不就行么。

每日弹窗签到。建议还是利用服务器后端发来的数据做一下判断的好

本地存个时间戳,每次进入小程序页面时判断一下时间戳对应的日期是否是今日,如果是,不弹窗,如果不是今日,则弹窗,同时更新缓存。这么简单的逻辑都实现不了建议你还是打打基础吧

要多自己思考,不然永远只能做简单的东西。这问题还有这么多热心人回复太不可思议了

如果业务需要精准,比如是优惠弹窗,每个人一天只能一次的话,为了避免用户的一些行为,比如删缓存,修改系统时间,恶意让弹窗无限触发,那么后台记录是最安全的;如果只是一些提示性或者不重要的,其实最直接还是缓存用时间戳算出来当天年月日,下次打开的年月日其中一个变了就弹窗

可以考虑一下用第三方的推送服务(www.xiaoshentui.com),不仅可以控制一天只弹一次,还可以控制一天对一个用户弹几次。还提供第三方模板消息推送服务,结合用户标签系统,做精细化推送。

localstorage里面存一下上次打开时间

判断一下不就是了


wx.setStroageSync('lock',Data.now())


const  lock = wx.getStorageSync('lock')


const  e = this.diff(lock)


const diff = (t) => {

  return (Data.now() -t) < 24*3600*1000 ? true : false

}


回到顶部