web-view
web-view 组件是一个可以用来承载网页的容器,会自动铺满整个小程序页面。
属性 | 类型 | 默认值 | 说明 | 版本 |
---|---|---|---|---|
src | string | webview 指向网页的链接,需登录 小程序管理后台 配置业务域名。 | ||
message | eventhandle | 网页向小程序 postMessage 时,会触发此事件。e.detail = { data } | ||
load | eventhandle | 网页加载成功时候触发此事件。e.detail = { src } | ||
error | eventhandle | 网页加载失败的时候触发此事件。e.detail = { src } |
示例代码:
<!-- template -->
<web-view src="https://miniapp.bilibili.com/"></web-view>
相关接口
<web-view>
网页中可使用 JSSDK 提供的接口返回小程序页面。 支持的接口有:
接口名 | 说明 | 最低版本 |
---|---|---|
bl.miniProgram.navigateTo | 参数与小程序接口一致 | |
bl.miniProgram.navigateBack | 参数与小程序接口一致 | |
bl.miniProgram.switchTab | 参数与小程序接口一致 | |
bl.miniProgram.reLaunch | 参数与小程序接口一致 | |
bl.miniProgram.redirectTo | 参数与小程序接口一致 | |
bl.miniProgram.postMessage | 向小程序发送消息,立马触发组件的message事件 | |
bl.miniProgram.getEnv | 获取当前环境 |
Bug & Tip
- 网页内 iframe 的域名也需要配置到域名白名单。
- 每个页面只能有一个
<web-view>
,<web-view>
会自动铺满整个页面,并覆盖其他组件。 <web-view>
网页与小程序之间不支持除 JSSDK 提供的接口之外的通信。
示例代码
bl.miniProgram.navigateTo({url: '/path/to/page'})
bl.miniProgram.postMessage({ data: 'foo' })
bl.miniProgram.postMessage({ data: {foo: 'bar'} })
bl.miniProgram.getEnv(function(res) { console.log(res.miniprogram) })