在加载小程序时,如果网络加载失败或无法打开网站,会出现类似如下的报错页面:
本文介绍如何自定义上图中的报错页面。
操作步骤
自定义报错页面可分为以下 2 步:
在 H5 基类中监听
kEvent_Navigation_Error
方法。
通过MPH5WebViewController () <PSDPluginProtocol>
接口,引入- (void)handleEvent:(PSDEvent *)event
方法:- (void)handleEvent:(PSDEvent *)event
{
[super handleEvent:event];
if ([kEvent_Navigation_Error isEqualToString:event.eventType]) {
[self handleContentViewDidFailLoad:(id)event];
}
}
handleContentViewDidFailLoad
方法如下:- (void)handleContentViewDidFailLoad:(PSDNavigationEvent *)event
{
PSDNavigationEvent *naviEvent = (PSDNavigationEvent *)event;
NSError *error = naviEvent.error;
[MPH5ErrorHelper handlErrorWithWebView:(WKWebView *)self.psdContentView error:error];
}
- 在
afterDidFinishLaunchingWithOptions
方法中设置error
页面以及 H5 基类。
其中,errorHtmlPath
是当 H5 页面加载失败时展示的 HTML 错误页路径,默认读取MPNebulaAdapter.bundle/error.html
。
myerror
代码如下:
效果如下:<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
自定义报错信息
</body>
</html>
文档内容是否对您有帮助?