小程序分享之后,在聊天界面打开分享的卡片可以跳转到分享指定的页面,然后再去聊天列表上方或小程序列表打开之后,页面停在 index 页面不动了,而且页面绑定的 tap 事件全部失效了。
iphone客户端没有出现过这种情况。只在安卓手机出现过。
报错内容:OnWebviewEvent: _DOMReady, WebViewId xxxxxxxxx not found
情景必现,概率接近 100%,请问我大概是哪里的逻辑写错了,或者有什么好的解决方法吗?我看到好多人提到了这个问题,但是我没要找到一个合适的解决方法。
碰到同样情况,通过不断测试之后,已经解决。页面跳转换用 reLaunch,并且在其fail函数里,加多1个等待时间,建议超过1秒钟,我的解决代码大体如下:
wx.reLaunch({
url: '/pages/to/your/path',
success: () => {
console.log("reLaunch success");
},
fail: () => {
console.log("reLaunch fail");
setTimeout(function () {
wx.switchTab({
url: '/pages/business/index/index',
})
}, 1500);
}
})
已解决问题
延时跳转
已解决问题,页面正常显示,没有
viewEvent:_DOMReady,WebViewId not found
错误了
我今天也遇到了这个问题。不过,我是直接在一个单独的按钮授权页面提示的。
我进入小程序后,首页就是这个按钮授权页面,我打印了日志,发现在onshow之后,就提示了WebViewid not found
(这个页面就一个图片,一个 open-tyep=getuserinfo的button)
所以,我不是因为活动页面超过5个 。我也没有用到switchtab
就算是原来用switchTab进行跳转过去页面,在会卡住不跳转的这个页面里,也不要用switchTab,换用reLaunch,这样才会触发fail方法,如前面我所说的