微信小程序解决订阅问题

问题:
因为用户需求所以有的小伙伴的微信会使用到微信订阅,这个之前可以自动触发授权弹框,但是随着微信开发者工具和微信api的更新,已经不支持默认调起弹窗,需要点击事件触发

解决方法:
可以在需要订阅的页面onLoad里调起wx.showModal,在确认按钮里调起wx.requestSubscribeMessage(详细请看微信官方api),这个时候大家就会问了,我是要没订阅的人弹出订阅弹窗,以及订阅了就不弹了,你这样需要一个条件来判断啊,好的接下来就要用到wx.getSetting(可以查看当前用户对当前微信小程序授权的所有信息)成功的回调里有res.subscriptionsSetting这个对象,如果这个对象里有itemSettings这个数组说明不用再授权了,那么怎么才会有这个数组呢,因为我们普通订阅都是一次性的,所以只有把订阅框下面的记住我的选项勾选后才会有这个弹窗,在点击确认授权订阅后在本地存一个判断,表示已经同意授权,为什么这么做,因为只通过一个res.subscriptionsSetting.itemSettings来判断的话,用户如果没勾选是不是会每次进页面就弹出来,所以判断弹框需要用res.subscriptionsSetting.itemSettings或本地存的确认授权判断,这样在一次性授权后就不会去到那个页面一直弹出来,因为是一次性的,所以需要在退出的时候清除这个缓存,退出清理缓存不好做,所以我选择在app.js的onLaunch生命周期函数里,一进入小程序就清理这个缓存在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
app.js会进入小程序最先执行,requestType就是存的状态,菜鸡分享大佬们可以指点一下,请不要指指点点

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值