Maison >interface Web >js tutoriel >Comment faire fonctionner l'API de l'applet WeChat avec promesse

Comment faire fonctionner l'API de l'applet WeChat avec promesse

php中世界最好的语言
php中世界最好的语言original
2018-06-08 14:26:241667parcourir

Cette fois, je vais vous montrer comment utiliser l'API du programme WeChat Mini avec promesse, et quelles sont les précautions à prendre pour utiliser l'API du programme WeChat Mini avec promesse. Voici un cas pratique, jetons un coup d'œil.

Les raisons de la promesse

L'API de l'applet WeChat utilise le mode de rappel des paramètres d'objet, ce qui peut facilement provoquer un enfer de rappel et rendre le code difficile à lire, à juger, modifier et déboguer.

Exemple d'API d'applet WeChat

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

Quand vous pouvez voir les deux couches, le code est très gênant

Promise Mini programme

Écrire une fonction publique qui peut promettre l'API du mini programme

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

Exemple d'utilisation

Le supplément paramètres transmis via le transfert de la méthode de déconstruction d'objet

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

Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de PHP !

Lecture recommandée :

Comment créer un mutex à sélection unique Vue2.0 dans des projets pratiques

Téléchargement d'encodage de fichiers en base64 via AJAX

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn