Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-zh
提交
53c4ae8b
unidocs-zh
项目概览
DCloud
/
unidocs-zh
通知
3341
Star
107
Fork
853
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
103
列表
看板
标记
里程碑
合并请求
85
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
unidocs-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
103
Issue
103
列表
看板
标记
里程碑
合并请求
85
合并请求
85
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
53c4ae8b
编写于
3月 14, 2022
作者:
DCloud-yyl
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add app-webview-error.md
上级
a688c65c
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
71 addition
and
0 deletion
+71
-0
docs/app-webview-error.md
docs/app-webview-error.md
+71
-0
未找到文件。
docs/app-webview-error.md
0 → 100644
浏览文件 @
53c4ae8b
当webview组件(窗口)加载错误地址(如本地页面不存在)或者访问网络资源失败(如无法访问网络)时会自动显示默认错误页面:

如需修改默认错误页面样式,可以通过以下方法自定义Webview的404等错误页面。
### 设置自定义错误页面
**可视化界面配置**
打开项目的manifest.json文件,在 “App常用其它设置” -> “自定义404错误页面” 下点击 “浏览” 选择页面文件:

> 注:建议使用html文件,并放到项目根目录下的 hybrid/html 文件夹中
**源码视图配置**
打开项目的manifest.json文件,切换到“源码视图”,根据项目类型进行配置错误页面路径,推荐使用本地地址,相对于应用根目录;设置 url 属性值为 "none" 表示关闭自定义错误页面功能,加载页面错误时显示系统默认错误页面内容。
-
uni-app项目
在 "app-plus" -> "error" 节点的 url 属性配置自定义错误页面路径,示例如下:
```
js
"
app-plus
"
:
{
"
error
"
:
{
"
url
"
:
"
hybrid/html/error.html
"
},
//...
},
//...
```
-
5+App/Wap2App项目
在 "plus" -> "error" 节点的 url 属性配置自定义错误页面路径,示例如下:
```
javascript
"
plus
"
:
{
"
error
"
:
{
"
url
"
:
"
error.html
"
},
//...
},
//...
```
其中url地址推荐使用本地地址,相对于应用根目录。
设置为“none”则关闭跳转到错误页面功能,此时页面显示Webview默认的错误页面内容。
### 错误页面中监听事件
自定义404错误页面时,可能需要在 error.html 页面中获取错误原因,可以通过以下方法监听 "error" 事件获取完整错误信息,示例如下:
```
javascript
// 获取错误信息
document
.
addEventListener
(
"
error
"
,
function
(
e
){
var
url
=
e
.
url
;
// 错误页面的url地址
var
href
=
e
.
href
;
// 错误页面的完整路径(包括完整的协议头)
},
false
);
```
### 运行时动态设置自定义错误页面
如果需要单独自定义某个Webview窗口的错误页面,则需要在创建时通过
[
WebviewStyle
](
http://www.dcloud.io/docs/api/zh_cn/webview.html#plus.webview.WebviewStyle
)
对象的errorPage属性控制:
```
js
var
styles
=
{
errorPage
:
"
error.html
"
};
// 设置为“none”则关闭此Webview窗口的跳转到错误页面功能
var
webview
=
plus
.
webview
.
create
(
"
url
"
,
"
id
"
,
styles
);
webview
.
show
();
```
> 注:仅5+App/Wap2App项目支持
### 常见问题
-
Android平台使用iframe时如果无法加载页面在不同版本系统上存在差异:
+
Android5.0及以上版本:Webview窗口对象不会加载错误页面,仅iframe节点显示无法加载页面;
+
5.0以下版本:Webview窗口对象会加载错误页面。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录