在界面上放置一个按钮,用于获取授权推送消息
<button bindtouchend="authMsg">授权金叶医生推送消息</button>
事件中是这么写得
authMsg(event) { wx.requestSubscribeMessage({ tmplIds: [ 'bPJUjgxTYg9yN3fn2tg4PaStW1I--DiZ7rr7KU8LQLo' ], success: function (res) { console.log(res) }, fail: function (err) { console.log(err) } }) }, |
但是提示错误
errMsg: "requestSubscribeMessage:fail can only be invoked by user TAP gesture."
这是为什么???
不能延迟调用,即无法在await xxapi后调用,只能在bindtap之后立即调用
只能在bindtap事件中调用
遇到过类似情况,有两点要注意:
1.要通过bindtap绑定
2.绑定方法内直接调用requestSubscribeMessage,不能在回调中调用
像showModal中是回调,亲测不可以,希望能帮到你
真机测试正常