使用wx.navigateToMiniProgram时,发现报错 fail can only be invoked by user TAP gesture 。
经调查,用户可以在普通界面(2D)上,触发bind:tap事件时,正常调用wx.navigateToMiniProgram跳转小程序。
但是,使用XRFRMAE建立3D界面后,用户点击3D模型,触发了bind:touch-shape事件,但是此时调用wx.navigateToMiniProgram,会报错fail can only be invoked by user TAP gesture。
无论是3D点击还是2D点击,都是用户的TAP事件,不该区别对待。
更何况现在已经让wx.navigateToMiniProgram弹出询问框,而不是直接跳转了,因此希望尽快将3D部分的bind:touch-shape事件也对应掉。
P.S.
测试发现,只要之前在2D界面点过按钮,之后的3Dtouch也不会报错,也就是一次点击管之后所有流程,而不是一次点击管一次跳转,这用户流程设计有点装样子啊?
请具体描述问题出现的流程,并提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。
https://developers.weixin.qq.com/s/KQ4rn1mm7DKR
《代码意图》
在XRFRAME的3D界面显示一个头盔模型,
第1-5次点击头盔时,会跳转随申办小程序(我这边是上海的)
第6次以后点击头盔时,会先调出提示对话框,点确定后,再跳转随申办小程序
《实测情况》
你会发现连点5下没反应,第6下开始点出提示对话框后,点确定,会弹出要不要跳转小程序的提示。
更恶心的是,点击手机左上角的vConsole按钮看log,也算用户操作。
也就是如果你在第5次点击头盔之前点了vConsole按钮看log,关闭log,再点击头盔,就会直接看到要不要跳转小程序的提示。
抱歉,这周这边比较忙,看到回复晚了,明天会给你流程和代码片段