小程序模板:专业的小程序模板与静态模板分享平台
小程序
教程
搜索
当前位置 : 首页> 小程序教程> 微信小程序开发用户订阅消息,判断订阅消息是否已经订阅

微信小程序开发用户订阅消息,判断订阅消息是否已经订阅

微信小程序实现一次性订阅消息的代码:

    订阅提醒


js文件

加入订阅消息代码:wx.requestSubscribeMessage(Object object)

  //授权订阅提醒
  subscribeMessage(){
    console.info('订阅消息!!!');
    let tmplId ='LGpkXsxxxxPFE02z6Oxxxxv_eez0xxxxego';
    wx.requestSubscribeMessage({
      tmplIds: [tmplId],
      success (res) {
        if(res[tmplId]=='accept'){//如果点击允许
          wx.showToast({
            title: '订阅成功',
          })
        }
      }
    })
  }


判断订阅消息是否已经订阅

let id = 'LGpkXsQ396mr-xxxxxxxxxx6Ovd5w4v_eez0pYoQego'
    wx.getSetting({
      withSubscriptions: true,
      success(res) {
        debugger
        console.log(res)
        if (res.subscriptionsSetting.mainSwitch) { // 用户打开了订阅消息总开关
          if (res.subscriptionsSetting.itemSettings) { // 用户同意总是保持是否推送消息的选择, 这里表示以后不会再拉起推送消息的授权
            let moIdState = res.subscriptionsSetting.itemSettings[id]; // 用户同意的消息模板id
            if (moIdState === 'accept') {
              wx.requestSubscribeMessage({
                tmplIds: ['LGpkXsQ396mr-xxxxxxxxxx6Ovd5w4v_eez0pYoQego'],
                success(res) {
                  wx.showToast({
                    title: '不会再拉起推送消息的授权,订阅成功',
                  })
                },
              })
            } else if (moIdState === 'reject') {
              console.log('拒绝了消息推送');
              wx.showToast({
                title: '拒绝了消息推送',
              });
              wx.openSetting({
                withSubscriptions: true,
              });
            } else if (moIdState === 'ban') {
              wx.showToast({
                title: '已被后台封禁',
              })
            }
          } else {
              wx.requestSubscribeMessage({
                tmplIds: ['LGpkXsQ396mr-xxxxxxxxxx6Ovd5w4v_eez0pYoQego'],
                success(res) {
                  wx.showToast({
                    title: '订阅成功',
                  })
                },
              })
          }
        } else {
          wx.openSetting({
            withSubscriptions: true,
          })
        }
      }
    })

联系客服 意见反馈

签到成功!

已连续签到1天,签到3天将获得积分VIP1天

知道了