微信小程序承載網(wǎng)頁(yè) web-view

2022-05-11 16:14 更新

web-view

基礎(chǔ)庫(kù) 1.6.4 開始支持,低版本需做兼容處理

web-view 組件是一個(gè)可以用來(lái)承載網(wǎng)頁(yè)的容器,會(huì)自動(dòng)鋪滿整個(gè)小程序頁(yè)面。個(gè)人類型與海外類型的小程序暫不支持使用。

屬性名 類型 默認(rèn)值 說(shuō)明
src String none webview 指向網(wǎng)頁(yè)的鏈接。需登錄小程序管理后臺(tái)配置域名白名單。

示例代碼:

<!-- wxml -->
<!-- 指向微信公眾平臺(tái)首頁(yè)的web-view -->
<web-view src="https://mp.weixin.qq.com/" rel="external nofollow" ></web-view>

相關(guān)接口 1

<web-view/>網(wǎng)頁(yè)中可使用JSSDK 1.3.0提供的接口返回小程序頁(yè)面。 支持的接口有:

接口名 說(shuō)明 最低版本
wx.miniProgram.navigateTo 參數(shù)與小程序接口一致 1.6.4
wx.miniProgram.navigateBack 參數(shù)與小程序接口一致 1.6.4
wx.miniProgram.switchTab 參數(shù)與小程序接口一致 1.6.5
wx.miniProgram.reLaunch 參數(shù)與小程序接口一致 1.6.5
wx.miniProgram.redirectTo 參數(shù)與小程序接口一致 1.6.5

示例代碼:

<!-- html -->
<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.0.js" rel="external nofollow" ></script>

// javascript
wx.miniProgram.navigateTo({url: '/path/to/page'})

相關(guān)接口 2

<web-view/>網(wǎng)頁(yè)中僅支持以下JSSDK接口:

接口模塊 接口說(shuō)明 具體接口
判斷客戶端是否支持js checkJSApi
圖像接口 拍照或上傳 chooseImage
預(yù)覽圖片 previewImage
上傳圖片 uploadImage
下載圖片 downloadImage
獲取本地圖片 getLocalImgData
音頻接口 開始錄音 startRecord
停止錄音 stopRecord
監(jiān)聽錄音自動(dòng)停止 onVoiceRecordEnd
播放語(yǔ)音 playVoice
暫停播放 pauseVoice
停止播放 stopVoice
監(jiān)聽語(yǔ)音播放完畢 onVoicePlayEnd
上傳接口 uploadVoice
下載接口 downloadVoice
智能接口 識(shí)別音頻 translateVoice
設(shè)備信息 獲取網(wǎng)絡(luò)狀態(tài) getNetworkType
地理位置 使用內(nèi)置地圖 getLocation
獲取地理位置 openLocation
搖一搖周邊 開啟ibeacon startSearchBeacons
關(guān)閉ibeacon stopSearchBeacons
監(jiān)聽ibeacon onSearchBeacons
微信掃一掃 調(diào)起微信掃一掃 scanQRCode
微信卡券 拉取使用卡券列表 chooseCard
批量添加卡券接口 addCard
查看微信卡包的卡券 openCard
長(zhǎng)按識(shí)別 小程序圓形碼 無(wú)
相關(guān)接口 3

用戶分享時(shí)可獲取當(dāng)前<web-view/>的URL,即在onShareAppMessage回調(diào)中返回webViewUrl參數(shù)。

示例代碼:

Page({
  onShareAppMessage(options) {
    console.log(options.webViewUrl)
  }
})
相關(guān)接口 4

在網(wǎng)頁(yè)內(nèi)可通過(guò)window.__wxjs_environment變量判斷是否在小程序環(huán)境。

示例代碼:

// web-view下的頁(yè)面內(nèi)
wx.ready(function() {
    console.log(window.__wxjs_environment === 'miniprogram') // true
})

Bug & Tip

  1. 網(wǎng)頁(yè)內(nèi)iframe的域名也需要配置到域名白名單。
  2. 開發(fā)者工具上,可以在 <web-view/> 組件上通過(guò)右鍵 - 調(diào)試,打開 <web-view/> 組件的調(diào)試。
  3. 每個(gè)頁(yè)面只能有一個(gè)<web-view/>,<web-view/>會(huì)自動(dòng)鋪滿整個(gè)頁(yè)面,并覆蓋其他組件。
  4. <web-view/>網(wǎng)頁(yè)與小程序之間不支持除JSSDK提供的接口之外的通信。
  5. 在iOS中,若存在JSSDK接口調(diào)用無(wú)響應(yīng)的情況,可在<web-view/>的src后面加個(gè)#wechat_redirect解決。
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)