微信小程序開發(fā)API

時間:2024-10-27 10:27:26 |閱讀量:

微信小程序的開發(fā)框架提供了豐富的API,包括事件監(jiān)聽、同步API、異步API和異步API返回Promise等類型。下面是對這些不同類型API更詳細(xì)的介紹:

1. 事件監(jiān)聽API

以“on”開頭的API用于監(jiān)聽某個事件是否觸發(fā),例如wx.onSocketOpen、wx.onCompassChange等。這些API接受一個回調(diào)函數(shù)作為參數(shù),當(dāng)事件觸發(fā)時,會調(diào)用該回調(diào)函數(shù),并將相關(guān)數(shù)據(jù)以參數(shù)形式傳入。

示例:

wx.onCompassChange(function (res) {
  console.log(res.direction)
})

2. 同步API

以“Sync”結(jié)尾的API都是同步API,例如wx.setStorageSync、wx.getSystemInfoSync等。此外,還有一些其他的同步API,如wx.createWorker、wx.getBackgroundAudioManager等,具體請參見API文檔中的說明。同步API的執(zhí)行結(jié)果可以通過函數(shù)返回值直接獲取,如果執(zhí)行出錯會拋出異常。

示例:

try {
  wx.setStorageSync('key', 'value')
} catch (e) {
  console.error(e)
}

3. 異步API

大多數(shù)API都是異步API,例如wx.request、wx.login等。這些API通常都接受一個Object類型的參數(shù),其中可以按需指定success、fail和complete等回調(diào)函數(shù)來接收接口調(diào)用結(jié)果。異步API的執(zhí)行結(jié)果需要通過Object類型的參數(shù)中傳入的對應(yīng)回調(diào)函數(shù)獲取。部分異步API也會有返回值,可以用來實現(xiàn)更豐富的功能,例如wx.request、wx.connectSocket等。

參數(shù)名 類型 必填 說明
success function 接口調(diào)用成功的回調(diào)函數(shù)
fail function 接口調(diào)用失敗的回調(diào)函數(shù)
complete function 接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會執(zhí)行)
其他 Any - 接口定義的其他參數(shù)

示例:

wx.login({
  success(res) {
    console.log(res.code)
  }
})

4. 異步API返回Promise

基礎(chǔ)庫2.10.2版本起,異步API支持callback和promise兩種調(diào)用方式。當(dāng)接口參數(shù)Object對象中不包含success/fail/complete時將默認(rèn)返回promise,否則仍按回調(diào)方式執(zhí)行,無返回值。

注意事項

  1. 部分接口如downloadFile、request、uploadFile、connectSocket、createCamera(小游戲)本身就有返回值,它們的promisify需要開發(fā)者自行封裝。
  2. 當(dāng)沒有回調(diào)參數(shù)時,異步接口返回promise。此時若函數(shù)調(diào)用失敗進(jìn)入fail邏輯,會報錯提示Uncaught (in promise),開發(fā)者可通過catch來進(jìn)行捕獲。
  3. wx.onUnhandledRejection可以監(jiān)聽未處理的Promise拒絕事件。

示例:

<本文由himall原創(chuàng),商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請標(biāo)明:himall原創(chuàng)>

多用戶商城系統(tǒng)解決方案

滿足不同行業(yè)發(fā)展電商的需求,HiMall更有針對性的提供不同行業(yè)內(nèi)的電商解決方案

  • 跨境電商解決方案

    支持直郵/保稅模式

    對接海關(guān)/保稅倉

    支持多國國際語言

    對接Paypal國際支付

    幫助跨境外貿(mào)企業(yè)搭建跨境進(jìn)口/出口電商平臺,搶占國際電商市場,針對企業(yè)需求定制個性化跨境電商解決方案
    了解跨境方案
  • 分賬解決方案

    迎合金融監(jiān)管要求

    規(guī)避“二清”結(jié)算

    節(jié)約平臺財務(wù)成本

    降低平臺招商成本

    在合法、合規(guī)的前提下,為電商平臺提供資金收付、賬戶管理、資金合規(guī)等一體化整體解決方案
    了解分賬方案
  • B2B批發(fā)解決方案

    多級階梯批發(fā)價

    布局全渠道批發(fā)入口

    專屬批發(fā)訂貨市場

    銀聯(lián)B2B大額支付

    為企業(yè)快速搭建綜合性B2B批發(fā)電商平臺,整合線下批發(fā)資源,拓展線上批發(fā)渠道,實現(xiàn)批發(fā)業(yè)務(wù)24小時在線經(jīng)營
    了解B2B方案
更多電商解決方案>
|2024-10-27猜你喜歡

【本站聲明】 1、本網(wǎng)站發(fā)布的該篇文章,目的在于分享電商知識及傳遞、交流相關(guān)電商信息,以便您學(xué)習(xí)或了解電商知識,請您不要用于其他用途;
2、該篇文章中所涉及的商標(biāo)、標(biāo)識的商品/服務(wù)并非來源于本網(wǎng)站,更非本網(wǎng)站提供,與本網(wǎng)站無關(guān),系他人的商品或服務(wù),本網(wǎng)站對于該類商標(biāo)、標(biāo)識不擁有任何權(quán)利;
3、本網(wǎng)站不對該篇文章中所涉及的商標(biāo)、標(biāo)識的商品/服務(wù)作任何明示或暗示的保證或擔(dān)保;
4、本網(wǎng)站不對文章中所涉及的內(nèi)容真實性、準(zhǔn)確性、可靠性負(fù)責(zé),僅系客觀性描述,如您需要了解該類商品/服務(wù)詳細(xì)的資訊,請您直接與該類商品/服務(wù)的提供者聯(lián)系。

電話咨詢 微信咨詢 0元開店