requestSubscribeMessage(tmplId) {
return new Promise((resolve, reject) => {
wx.requestSubscribeMessage({
tmplIds: [tmplId],
success: res => {
resolve(res[tmplId] == 'accept')
},
fail: res => {
if (res.errMsg == "requestSubscribeMessage:fail cancel") {
resolve(false)
} else {
reject(res)
}
}
})
})
}
一次性订阅消息 工作正常。
长期订阅消息 用户同意工作正常,如果用户拒绝则直接进入 fail, errMsg 内容为requestSubscribeMessage:fail cancel,请问是设计如此还是代码执行没达到预期?
官方设定是这样,用户点击取消了相当于你这些订阅消息用户都没订阅
重点是官方文档就是这样写的, 通过参数来区分是同意还是拒绝。