Heim >Web-Frontend >js-Tutorial >API-Kapselung des WeChat Mini-Programms

API-Kapselung des WeChat Mini-Programms

php中世界最好的语言
php中世界最好的语言Original
2018-04-28 15:10:113128Durchsuche

Dieses Mal präsentiere ich Ihnen die API-Kapselung des WeChat Mini-Programms. Was sind die Vorsichtsmaßnahmen für die API-Kapselung des WeChat Mini-Programms?

Gründe für Versprechen

Die API des WeChat-Applets verwendet den Parameter-Callback-Modus object, der leicht zur Callback-Hölle führen und den Code erschweren kann zum Lesen, Beurteilen, Ändern und Debuggen.

WeChat-Applet-API-Beispiel

// 获取用户信息
  wx.getSetting({
   success: res => {
    if (res.authSetting['scope.userInfo']) {
     // 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框
     wx.getUserInfo({
      success: res => {
       // 可以将 res 发送给后台解码出 unionId
       this.globalData.userInfo = res.userInfo
      }
     })
    }
   }
  })

Es ist ersichtlich, dass, wenn es zwei Ebenen gibt, Der Code ist sehr umständlich

Miniprogramm versprechen

Schreiben Sie eine öffentliche Funktion, die die Miniprogramm-API versprechen kann

function promisify (method, options = {}) {
 return new Promise((resolve, reject) => {
  // 将options对象赋值 然后再传给下面调用的方法中
  options.success = resolve
  options.fail = err => {
   reject(err)
  }
  wx[method](options)
 })
}

Anwendungsbeispiel

Die zusätzlich übergebenen Parameter werden durch Objektdekonstruktion übergeben

promisify('getUserInfo')
 .then((res) => console.log(res))
 .catch((err) => {console.error(err)})
promisify('navigateTo', { url })

Ich glaube, Sie haben die Methode beherrscht, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie unter Bitte beachten Sie andere verwandte Artikel auf der chinesischen PHP-Website!

Empfohlene Lektüre:

Detaillierte Erläuterung der Schritte zur Implementierung eines bogenförmigen Ziehfortschrittsbalkens

Angular6.0 implementiert die Funktion „Lazy Loading“ von Komponenten (mit Code)

Das obige ist der detaillierte Inhalt vonAPI-Kapselung des WeChat Mini-Programms. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn