欧美日韩精品一区二区在线线,一级无码在线收看,精品国产高清91,久久精品欧美电影

# web-view

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

小程序插件:不支持

微信 Windows 版:支持

微信 Mac 版:支持

微信 鴻蒙 OS 版:支持

渲染框架支持情況:WebView

# 功能描述

承載網(wǎng)頁的容器。會自動鋪滿整個小程序頁面,個人類型的小程序暫不支持使用。

客戶端 6.7.2 版本開始,navigationStyle: customweb-view 組件無效

# 屬性說明

屬性 類型 默認(rèn)值 必填 說明 最低版本
src string webview 指向網(wǎng)頁的鏈接??纱蜷_關(guān)聯(lián)的公眾號的文章,其它網(wǎng)頁需登錄小程序管理后臺配置業(yè)務(wù)域名。 1.6.4
bindmessage eventhandler 網(wǎng)頁向小程序 postMessage 時,會在以下特定時機觸發(fā)并收到消息:小程序后退、組件銷毀、分享、復(fù)制鏈接(2.31.1)。e.detail = { data },data是多次 postMessage 的參數(shù)組成的數(shù)組。 1.6.4
bindload eventhandler 網(wǎng)頁加載成功時候觸發(fā)此事件。e.detail = { src } 1.6.4
binderror eventhandler 網(wǎng)頁加載失敗的時候觸發(fā)此事件。e.detail = { url, fullUrl },其中 fullUrl 為加載失敗時的完整 url 1.6.4

# 相關(guān)接口 1

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

接口名 說明 最低版本
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
wx.miniProgram.postMessage 向小程序發(fā)送消息,會在以下特定時機觸發(fā)組件的message事件:小程序后退、組件銷毀、分享、復(fù)制鏈接(2.31.1 1.7.1
wx.miniProgram.getEnv 獲取當(dāng)前環(huán)境 1.7.1

# 示例代碼

在開發(fā)者工具中預(yù)覽效果

// <script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.2.js"></script>

// javascript
wx.miniProgram.navigateTo({url: '/path/to/page'})
wx.miniProgram.postMessage({ data: 'foo' })
wx.miniProgram.postMessage({ data: {foo: 'bar'} })
wx.miniProgram.getEnv(function(res) { console.log(res.miniprogram) })

# 相關(guān)接口 2

web-view網(wǎng)頁中僅支持以下JSSDK接口

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

# 相關(guān)接口 3

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

# 示例代碼

示例代碼:

Page({
  onShareAppMessage(options) {
    console.log(options.webViewUrl)
  }
})

# 相關(guān)接口 4

在網(wǎng)頁內(nèi)可通過window.__wxjs_environment變量判斷是否在小程序環(huán)境,建議在WeixinJSBridgeReady回調(diào)中使用,也可以使用JSSDK 1.3.2提供的getEnv接口。

# 示例代碼

// web-view下的頁面內(nèi)
function ready() {
  console.log(window.__wxjs_environment === 'miniprogram') // true
}
if (!window.WeixinJSBridge || !WeixinJSBridge.invoke) {
  document.addEventListener('WeixinJSBridgeReady', ready, false)
} else {
  ready()
}

// 或者
wx.miniProgram.getEnv(function(res) {
  console.log(res.miniprogram) // true
})

# 相關(guān)接口 5

從微信7.0.0開始,可以通過判斷 userAgent 中包含 miniProgram 字樣來判斷小程序 web-view 環(huán)境。

從微信 Android 8.0.16,iOS 8.0.17 開始,web-view 的 userAgent 中會攜帶小程序的 appid。

對于微信鴻蒙 OS 版本,可根據(jù) userAgent 中包含 ArkWebMicroMessenger 字樣來判斷。

# 示例代碼

console.log(window.navigator.userAgent);

// "Mozilla/....../arm64 miniProgram/wx14211cb2fd9f805123"    攜帶了 miniProgram 字樣和小程序的 appid

# 相關(guān)接口 6

從微信7.0.3開始,webview內(nèi)可以通過判斷下面的方式判斷小程序是否在前臺:

WeixinJSBridge.on('onPageStateChange', function(res) {
  console.log('res is active', res.active)
})

# Bug & Tip

  1. tip網(wǎng)頁內(nèi) iframe 的域名也需要配置到域名白名單。
  2. tip:開發(fā)者工具上,可以在 web-view 組件上通過右鍵 - 調(diào)試,打開 web-view 組件的調(diào)試。
  3. tip:每個頁面只能有一個 web-view,web-view 會自動鋪滿整個頁面,并覆蓋其他組件。
  4. tipweb-view 網(wǎng)頁與小程序之間不支持除 JSSDK 提供的接口之外的通信。
  5. tip:在 iOS 中,若存在JSSDK接口調(diào)用無響應(yīng)的情況,可在 web-view 的 src 后面加個#wechat_redirect解決。
  6. tip:避免在鏈接中帶有中文字符,在 iOS 中會有打開白屏的問題,建議加一下 encodeURIComponent