报错信息:requestSubscribeMessage:fail can only be invoked by user TAP gesture.
报错原因:在某个场景的方法里面调用而不是直接通过用户点击
解决方法:一般可做成显示一个弹框友好的提示用户,然后再让用户点击按钮去手动触发订阅
wx.showModal({
title: '提示',
content: "请确认是否要XXX?",
success: function (sm) {
if(sm.confirm) {
wx.requestSubscribeMessage({
tmplIds: ['XXX'],
success (res) {
console.log(res);
},
fail (error) {
console.log(error);
}
})
}
}
})