亚洲欧洲日产国码无码久久99_国内精品伊人久久久久妇_久久男人av资源网站无码软件_久久国产乱子伦精品免费强

【微信小程序】插件開(kāi)發(fā)功能和小程序基礎(chǔ)庫(kù)文檔

日期:2018-06-22 作者:管理員 來(lái)源:本站

【微信小程序】插件開(kāi)發(fā)功能文檔對(duì)微信小程序開(kāi)發(fā)者可開(kāi)發(fā)完整的插件頁(yè)面,并具有微信分享、頁(yè)面跳轉(zhuǎn)等能力【微信小程序開(kāi)發(fā)電話】便于插件開(kāi)發(fā)者在插件內(nèi)提供完整的服務(wù)流程、同時(shí)可便捷地被其他小程序接入使用。

【微信小程序】插件開(kāi)發(fā)功能文檔:微信小程序定制開(kāi)發(fā)電話:400-000-1280

【微信小程序】插件開(kāi)發(fā)功能文檔:微信小程序定制開(kāi)發(fā)電話


插件功能頁(yè)

插件功能頁(yè)從小程序基礎(chǔ)庫(kù)版本 2.1.0 開(kāi)始支持。

插件不能直接調(diào)用 wx.login 等較為敏感的接口。在需要訪問(wèn)一些敏感接口時(shí),可以使用插件功能頁(yè)的方式。使用插件功能頁(yè)可以實(shí)現(xiàn)以下這些功能:

  • 獲取用戶信息,包括 openid 和昵稱(chēng)等(相當(dāng)于 wx.login 和 wx.getUserInfo 的功能)。

  • 支付(相當(dāng)于 wx.requestPayment )。

需要注意的是:插件使用支付功能,需要進(jìn)行額外的權(quán)限申請(qǐng),申請(qǐng)位置位于管理后臺(tái)的“小程序插件 -> 基本設(shè)置 -> 支付能力”設(shè)置項(xiàng)中。另外,無(wú)論是否通過(guò)申請(qǐng),主體為個(gè)人小程序在使用插件時(shí),都無(wú)法正常使用插件里的支付功能。

在具體使用功能頁(yè)時(shí),插件可以在插件的自定義組件中放置一個(gè) <functional-page-navigator> 組件,用戶在點(diǎn)擊這個(gè)組件區(qū)域時(shí),可以跳轉(zhuǎn)到一個(gè)固定的頁(yè)面,允許用戶執(zhí)行登錄或其他操作。

激活功能頁(yè)特性

功能頁(yè)是 插件所有者小程序 中的一個(gè)特殊頁(yè)面。

插件所有者小程序,指的是與插件 AppID 相同的小程序。例如,“小程序示例”小程序開(kāi)發(fā)了一個(gè)“小程序示例插件”,無(wú)論這個(gè)插件被哪個(gè)小程序使用,這個(gè)插件的插件所有者小程序都是“小程序示例”。

啟用插件功能頁(yè)時(shí),需要在插件所有者小程序 app.json 文件中添加 functionalPages 定義段,其值為 true 。

{ "functionalPages": true }

注意,新增或改變這個(gè)字段時(shí),需要這個(gè)小程序發(fā)布新版本,才能在正式環(huán)境中使用插件功能頁(yè)。

跳轉(zhuǎn)到功能頁(yè)

在插件需要登錄時(shí),可以在插件的自定義組件中放置一個(gè) <functional-page-navigator> 組件。

代碼示例:

<functional-page-navigator name="loginAndGetUserInfo" args="" version="develop" bind:success="loginSuccess"> <button>登錄到插件</button> </functional-page-navigator>

用戶在點(diǎn)擊這個(gè)區(qū)域時(shí),會(huì)自動(dòng)跳轉(zhuǎn)到插件所有者小程序的功能頁(yè)。功能頁(yè)會(huì)提示用戶進(jìn)行登錄或其他相應(yīng)的操作。操作結(jié)果會(huì)以組件事件的方式返回。

具體用法和支持的功能頁(yè)列表詳見(jiàn) 組件說(shuō)明 。

目前,功能頁(yè)的跳轉(zhuǎn)目前不支持在開(kāi)發(fā)者工具中調(diào)試,請(qǐng)?jiān)谡鏅C(jī)上測(cè)試。

功能頁(yè)函數(shù)

在使用支付功能頁(yè)時(shí),插件所有者小程序需要提供一個(gè)函數(shù)來(lái)響應(yīng)支付請(qǐng)求。這個(gè)響應(yīng)函數(shù)應(yīng)當(dāng)寫(xiě)在小程序根目錄中的 functional-pages/request-payment.js 文件中,名為 beforeRequestPayment 。如果不提供這段代碼,將通過(guò) fail 事件返回失敗。

注意:功能頁(yè)函數(shù)不應(yīng) require 其他非 functional-pages 目錄中的文件,其他非 functional-pages 目錄中的文件也不應(yīng) require 這個(gè)目錄中的文件。這樣的 require 調(diào)用在未來(lái)將不被支持。

代碼示例:

// functional-pages/request-payment.js exports.beforeRequestPayment = function(paymentArgs, callback) {
  paymentArgs // 就是 functional-page-navigator 的 args 屬性中 paymentArgs // 在這里可以執(zhí)行一些支付前的參數(shù)處理邏輯,包括通知后臺(tái)調(diào)用統(tǒng)一下單接口 // 在 callback 中需要返回兩個(gè)參數(shù): err 和 requestPaymentArgs // err 應(yīng)為 null (或者一些失敗信息) // requestPaymentArgs 將被用于調(diào)用 wx.requestPayment callback(null, { // 這里的參數(shù)與 wx.requestPayment 相同,除了 success/fail/complete 不被支持 timeStamp: timeStamp,
    nonceStr: nonceStr,
    package: package,
    signType: signType,
    paySign: paySign,
  })
}

這個(gè)目錄和文件應(yīng)當(dāng)被放置在插件所有者小程序代碼中(而非插件代碼中),它是插件所有者小程序的一部分(而非插件的一部分)。 如果需要新增或更改這段代碼,需要發(fā)布插件所有者小程序,才能在正式版中生效;需要重新預(yù)覽插件所有者小程序,才能在開(kāi)發(fā)版中生效。

Bugs & Tips

  • Bug:在微信版本 6.6.7 中,功能頁(yè)被拉起時(shí)會(huì)觸發(fā) App 的部分生命周期并使得功能頁(yè)啟動(dòng)時(shí)間變得比較長(zhǎng)。在后續(xù)的微信版本中這一行為會(huì)發(fā)生變更,使 App 生命周期不再被觸發(fā)。



兼容

小程序的功能不斷的增加,但是舊版本的微信客戶端并不支持新功能,所以在使用這些新能力的時(shí)候需要做兼容。

文檔會(huì)在組件,API等頁(yè)面描述中帶上各個(gè)功能所支持的版本號(hào)。

可以通過(guò) wx.getSystemInfo 或者 wx.getSystemInfoSync 獲取到小程序的基礎(chǔ)庫(kù)版本號(hào)。

也可以通過(guò) wx.canIUse 詳情 來(lái)判斷是否可以在該基礎(chǔ)庫(kù)版本下直接使用對(duì)應(yīng)的API或者組件

兼容方式 - 版本比較

微信客戶端和小程序基礎(chǔ)庫(kù)的版本號(hào)風(fēng)格為 Major.Minor.Patch(主版本號(hào).次版本號(hào).修訂號(hào))。 開(kāi)發(fā)者可以根據(jù)版本號(hào)去做兼容,以下為參考代碼:

function compareVersion(v1, v2) {
  v1 = v1.split('.')
  v2 = v2.split('.') var len = Math.max(v1.length, v2.length) while (v1.length < len) {
    v1.push('0')
  } while (v2.length < len) {
    v2.push('0')
  } for (var i = 0; i < len; i++) { var num1 = parseInt(v1[i]) var num2 = parseInt(v2[i]) if (num1 > num2) { return 1 } else if (num1 < num2) { return -1 }
  } return 0 }

compareVersion('1.11.0', '1.9.9') // 1

兼容方式 - 接口

對(duì)于新增的 API,可以用以下代碼來(lái)判斷是否支持用戶的手機(jī)。

if (wx.openBluetoothAdapter) {
  wx.openBluetoothAdapter()
} else { // 如果希望用戶在最新版本的客戶端上體驗(yàn)?zāi)男〕绦?,可以這樣子提示 wx.showModal({
    title: '提示',
    content: '當(dāng)前微信版本過(guò)低,無(wú)法使用該功能,請(qǐng)升級(jí)到最新微信版本后重試。' })
}

兼容方式 - 參數(shù)

對(duì)于 API 的參數(shù)或者返回值有新增的參數(shù),可以判斷用以下代碼判斷。

wx.showModal({
  success: function(res) { if (wx.canIUse('showModal.cancel')) { console.log(res.cancel)
    }
  }
})

兼容方式 - 組件

對(duì)于組件,新增的組件或?qū)傩栽谂f版本上不會(huì)被處理,不過(guò)也不會(huì)報(bào)錯(cuò)。如果特殊場(chǎng)景需要對(duì)舊版本做一些降級(jí)處理,可以這樣子做。

Page({
  data: {
    canIUse: wx.canIUse('cover-view')
  }
})
<video controls="{{!canIUse}}"> <cover-view wx:if="{{canIUse}}">play</cover-view> </video>



functional-page-navigator

這個(gè)組件從小程序基礎(chǔ)庫(kù)版本 2.1.0 開(kāi)始支持。

僅在插件的自定義組件中有效,用于跳轉(zhuǎn)到插件功能頁(yè)。

屬性名 類(lèi)型 默認(rèn)值 說(shuō)明 最低版本
version String release 跳轉(zhuǎn)到的小程序版本,有效值 develop(開(kāi)發(fā)版),trial(體驗(yàn)版),release(正式版) ,僅在當(dāng)前小程序?yàn)殚_(kāi)發(fā)版或體驗(yàn)版時(shí)此參數(shù)有效;如果當(dāng)前小程序是體驗(yàn)版或正式版,則打開(kāi)的小程序必定是正式版 2.1.0
name String
要跳轉(zhuǎn)到的功能頁(yè) 2.1.0
args Object null 功能頁(yè)參數(shù),參數(shù)格式與具體功能頁(yè)相關(guān) 2.1.0
bindsuccess EventHandle
功能頁(yè)返回,且操作成功時(shí)觸發(fā), detail 格式與具體功能頁(yè)相關(guān) 2.1.0
bindfail EventHandle
功能頁(yè)返回,且操作失敗時(shí)觸發(fā), detail 格式與具體功能頁(yè)相關(guān) 2.1.0

name 有效值:

說(shuō)明 接受的 args success 返回的 detail fail 返回的 detail 最低版本
loginAndGetUserInfo 獲取用戶信息,對(duì)應(yīng) wx.login 和 wx.getUserInfo 與 wx.getUserInfo接受的 args 相同(除回調(diào)函數(shù)外) wx.login 和 wx.getUserInfo 的結(jié)果的并集 與 wx.login 或 wx.getUserInfo 相同 2.1.0
requestPayment 支付,對(duì)應(yīng) wx.requestPayment fee 字段,表示需要顯示在頁(yè)面中的金額,單位為分; paymentArgs 字段,任意數(shù)據(jù),傳遞給功能頁(yè)中的響應(yīng)函數(shù) 與 wx.requestPayment相同 與 wx.requestPayment相同 2.1.0

示例代碼:

<!-- sample.wxml --> <functional-page-navigator name="loginAndGetUserInfo" bind:success="loginSuccess"> <button>登錄到插件</button> </functional-page-navigator>
// redirect.js navigator.js Component({
  methods: {
    loginSuccess: function(e) { console.log(e.detail.code) // wx.login 的 code console.log(e.detail.userInfo) // wx.getUserInfo 的 userInfo }
  }
})

Tips:

  • 功能頁(yè)是插件所有者小程序中的一個(gè)特殊頁(yè)面,開(kāi)發(fā)者不能自定義這個(gè)頁(yè)面的外觀。

  • 在功能頁(yè)展示時(shí),一些與界面展示相關(guān)的接口將被禁用(接口調(diào)用返回 fail )。

  • 這個(gè)組件本身可以在開(kāi)發(fā)者工具中使用,但功能頁(yè)的跳轉(zhuǎn)目前不支持在開(kāi)發(fā)者工具中調(diào)試,請(qǐng)?jiān)谡鏅C(jī)上測(cè)試。


二維碼
掃二維碼手機(jī)查看該文章
當(dāng)前網(wǎng)址:http://www.footcarefacts.net/wechat/571.html

相關(guān)資訊

?
Copyright ? 2007-2025 珠海市網(wǎng)訊互聯(lián)信息科技有限公司 www.footcarefacts.net 版權(quán)所有
粵公網(wǎng)安備44040202000391號(hào) 粵ICP備19117377號(hào) 網(wǎng)站地圖 站點(diǎn)地圖
在線客服
亚洲欧洲日产国码无码久久99_国内精品伊人久久久久妇_久久男人av资源网站无码软件_久久国产乱子伦精品免费强
  • 成人午夜精品一区二区三区| 一区二区三区小说| 日韩在线观看一区二区| 色综合久久综合网| 日本成人中文字幕在线视频| 色综合久久天天综合网| zzijzzij亚洲日本少妇熟睡| 亚洲成人综合在线| 中文字幕av一区 二区| 成人白浆超碰人人人人| 亚洲大尺度视频在线观看| av午夜精品一区二区三区| 91传媒视频在线播放| 欧美区在线观看| 欧美丰满嫩嫩电影| 亚洲欧美二区三区| 在线不卡免费欧美| 欧美久久久一区| 色综合久久66| 国产主播一区二区| 粉嫩13p一区二区三区| 免费观看日韩电影| 亚洲国产高清在线| 国产二区国产一区在线观看| 国产.精品.日韩.另类.中文.在线.播放| 国产精品99久久久久久似苏梦涵| 亚洲激情图片qvod| 亚洲欧美在线高清| 国产精品久久毛片| 欧美日韩一区二区三区高清| 亚洲三级电影全部在线观看高清| 欧美激情一区二区在线| 91精品婷婷国产综合久久竹菊| aaa亚洲精品一二三区| 亚洲国产美国国产综合一区二区| 精品黑人一区二区三区久久| 久久影院午夜片一区| 波多野结衣中文字幕一区二区三区| www.日本不卡| av电影在线观看完整版一区二区| 国产精品福利在线播放| 国产精品自拍三区| 亚洲免费av高清| 亚洲色图一区二区| 日韩欧美国产午夜精品| 欧美一区二区三区视频免费| av在线不卡观看免费观看| 91麻豆免费视频| 一本大道久久a久久综合婷婷| 免费欧美日韩国产三级电影| 一区二区三区在线视频免费观看| 欧美激情一区二区在线| 久久久www免费人成精品| 午夜精品福利一区二区三区av| 欧美系列亚洲系列| 麻豆精品一区二区| 久久黄色级2电影| 亚洲一区二区在线观看视频| 91一区二区三区在线观看| 在线不卡欧美精品一区二区三区| 日韩成人一区二区三区在线观看| 日韩码欧中文字| 国产精品视频一区二区三区不卡| 国产成人免费视频网站| 精品国产区一区| 久久久精品国产99久久精品芒果| 91精品免费在线观看| 欧美xxxxx牲另类人与| 五月天亚洲婷婷| 久久精品人人爽人人爽| 欧美极品另类videosde| 高潮精品一区videoshd| 国产成人亚洲综合a∨婷婷| 日韩免费电影网站| 91成人国产精品| 92精品国产成人观看免费| 久久综合色鬼综合色| 精品少妇一区二区三区在线视频| 国产成都精品91一区二区三| 国产成人av一区二区| 亚洲国产成人va在线观看天堂| 国产激情91久久精品导航| 亚洲不卡av一区二区三区| 亚洲电影欧美电影有声小说| 石原莉奈在线亚洲二区| 国产精品嫩草久久久久| 久久久www成人免费无遮挡大片| 欧美一区二区免费观在线| 日韩精品一区二区三区四区| 色吧成人激情小说| 亚洲免费观看高清完整版在线| 日精品一区二区三区| 中日韩av电影| 国产精品乱子久久久久| 日韩黄色小视频| 91精品国产综合久久香蕉麻豆| 国产美女久久久久| 99re视频这里只有精品| 久久精品国产99久久6| 日韩电影在线看| 亚洲丶国产丶欧美一区二区三区| 亚洲大片一区二区三区| 亚洲欧美日本韩国| 精品一二线国产| 91精品一区二区三区在线观看| 丁香桃色午夜亚洲一区二区三区| 成人av网站在线观看免费| 国产一区二区三区免费观看| 无吗不卡中文字幕| 亚洲女女做受ⅹxx高潮| 国产成人av一区二区三区在线| 久久国产精品免费| 一区二区三区产品免费精品久久75| 精品久久久久久综合日本欧美| 丰满少妇在线播放bd日韩电影| 久久伊人蜜桃av一区二区| 国产精品青草综合久久久久99| 欧美精品一区二区久久婷婷| 综合av第一页| 欧美在线观看视频一区二区| 在线综合视频播放| 欧美日韩国产一区| 国产欧美一区二区精品忘忧草| 全国精品久久少妇| 在线观看国产日韩| 亚洲aaa精品| 懂色av一区二区夜夜嗨| 免费在线一区观看| 亚洲风情在线资源站| 欧美成人精品1314www| 亚洲午夜在线观看视频在线| 人妖欧美一区二区| 国产精品久久久久久久浪潮网站| 亚洲一区在线播放| 精品国产一区二区三区不卡| av动漫一区二区| 人人爽香蕉精品| 色94色欧美sute亚洲线路二| 亚洲一区影音先锋| 欧美在线观看视频一区二区| 99精品视频一区| 亚洲天堂免费看| 2023国产精品自拍| 91麻豆福利精品推荐| 国产精品美女久久久久久久网站| 久久超级碰视频| 亚洲成a人片综合在线| av高清久久久| 精品剧情在线观看| 久久综合久久综合久久综合| 久久久精品天堂| 人人精品人人爱| 国产很黄免费观看久久| 日韩欧美一区二区不卡| 狠狠狠色丁香婷婷综合激情| 综合激情成人伊人| 欧美妇女性影城| 欧美国产精品久久| 亚洲电影一区二区| 日韩精品91亚洲二区在线观看| 亚洲成a人在线观看| 一区二区三区 在线观看视频| 国产精一品亚洲二区在线视频| 制服丝袜成人动漫| 日韩视频免费直播| 高清久久久久久| 亚洲视频在线观看三级| 久久99精品久久久久久国产越南| 国精产品一区一区三区mba视频| 午夜精品久久久久久不卡8050| 精品国产一二三| 午夜一区二区三区在线观看| 色综合咪咪久久| 亚洲午夜电影网| 捆绑调教美女网站视频一区| 精久久久久久久久久久| 国产精品毛片高清在线完整版| 亚洲精品久久7777| 国产99久久久久| 欧美亚洲一区三区| 国产一区二区三区免费看| 最新日韩av在线| 国产精品国产馆在线真实露脸| 精品一区免费av| 免费不卡在线观看| 欧美一级二级三级蜜桃| 国产情人综合久久777777| 日韩欧美精品在线| 欧美一区二区黄色| 99re成人在线| 成人午夜私人影院| 国产宾馆实践打屁股91| 99视频国产精品| 91在线国内视频| 欧美r级电影在线观看| av电影天堂一区二区在线| 亚洲精选视频在线| 精品毛片乱码1区2区3区| 日韩理论片一区二区| 中文字幕在线视频一区|