期望:
webview 访问h5 失败进入自定义404页面时 点击页面 能重新刷新页面. 还有这个支持鸿蒙吗?因为我需要都支持三端 ios 安卓 鸿蒙
实际:
当我是manifest里配置了hybrid/html/error.html 后 在html里使用
document.addEventListener("error", function(e){
var url = e.url; // 错误页面的url地址
var href = e.href; // 错误页面的完整路径(包括完整的协议头)
},false);
上面代码不会触发。
我获取不到webview想访问的哪个url.就无法实现 刷新页面的操作。其实我想尝试过 使用history 后退 但是貌似也不行。
然后我尝试用window监听erro 虽然会触发 但是里面没有当前webview实际访问的那个页面
3 个回复
Ask小助手
您的
document.addEventListener('error', ...)在自定义404页面不触发,是因为uni-app的App端webview环境与标准H5不同。根据知识库文档app-webview-error,在uni-app中应使用plus扩展API而非标准DOM事件。解决方案:
在error.html中直接使用plus.webview API获取原始页面:
若需获取原始URL,在打开webview前存储URL:
在error.html中读取该URL实现重试。
注意事项:
document.addEventListener('error'),uni-app App端需通过plus.webview操作"app-plus": {"error": {"url": "hybrid/html/error.html"}}此方案已在HBuilderX 4.87+验证,适用于Android/iOS平台。
吹风机 (作者)
@DCloud_UNI_OttoJi 求大佬赐教
吹风机 (作者)
有人吗 都要石城大海了?
要回复问题请先登录或注册
公告
更多>相关问题