Maison  >  Article  >  Applet WeChat  >  Exemple d'analyse de l'applet WeChat implémentant la fonction de transfert

Exemple d'analyse de l'applet WeChat implémentant la fonction de transfert

黄舟
黄舟original
2017-09-13 09:06:583568parcourir

Cet article présente principalement des informations pertinentes sur la mise en œuvre de la fonction de transfert du mini programme WeChat. Les méthodes de mise en œuvre et des exemples sont fournis ici pour aider tout le monde à apprendre et à comprendre. Les amis dans le besoin peuvent se référer à

Transfert du mini programme WeChat Mise en œuvre de la fonction

1 Lorsque l'utilisateur transfère le mini programme vers n'importe quelle discussion de groupe, le shareTicket transféré peut être obtenu


2. la carte transférée est dans le chat de groupe Lorsque le chat est ouvert par d'autres utilisateurs, vous pouvez obtenir un autre shareTicket dans App.onLaunch() ou App.onShow


3. être obtenue via l'interface wx.getShareInfo(). Les mêmes informations de transfert peuvent être obtenues. La fonction

onShareAppMessage(options) définit les informations de transfert de la page.

description du paramètre options :

de : Transférer la source de l'événement. bouton : le bouton de transfert dans la page ; menu : le menu de transfert dans le coin supérieur droit ;

cible : si la valeur de est bouton, la cible est le bouton qui a déclenché cet événement de transfert, sinon il n'est pas défini

Champ personnalisé :


return {
  title: '转发', // 转发标题(默认:当前小程序名称)
  path: '/pages/index/index', // 转发路径(当前页面 path ),必须是以 / 开头的完整路径
  success(e) {
   // shareAppMessage: ok,
   // shareTickets 数组,每一项是一个 shareTicket ,对应一个转发对象
     // 需要在页面onLoad()事件中实现接口
     wx.showShareMenu({
      // 要求小程序返回分享目标信息
      withShareTicket: true 
     });
  },
  fail(e) {
   // shareAppMessage:fail cancel
   // shareAppMessage:fail(detail message) 
  },
  complete() { }
}

wx.showShareMenu(OBJECT) Transférer avec shareTicket.

1. Pendant le processus de débogage du SDK et du périphérique réel, vous devez définir withShareTicket sur true


2. de l'appareil réel, pour les discussions de groupe transférées, shareTicket


onLoad(e) {
  wx.showShareMenu({
   withShareTicket: true
  })
 }, onShow(e) {
  wx.showShareMenu({
   withShareTicket: true
  })
 },

wx.getShareInfo(OBJECT) ne sera pas renvoyé pour obtenir les détails du transfert


if (res.shareTickets) {
 // 获取转发详细信息
 wx.getShareInfo({
  shareTicket: res.shareTickets[0],
  success(res) {
   res.errMsg; // 错误信息
   res.encryptedData; // 解密后为一个 JSON 结构(openGId  群对当前小程序的唯一 ID)
   res.iv; // 加密算法的初始向量
  },
  fail() {},
  complete() {}
 });
}

Une fois l'applet ouverte dans le groupe, récupérez la valeur de la situation et partagezTicket


//app.js
App({
 onLaunch: function (ops) {
  if (ops.scene == 1044) {
   console.log(ops.shareTicket)
  }
 }
})

Bug & Astuce

1. Les paramètres passés entre les pages doivent être reçus dans la fonction onLoad() et ne peuvent pas être reçus dans la fonction onShow(). .


2. Pour obtenir le shareTicket de l'applet ouverte dans la discussion de groupe, vous devez utiliser App.onLaunch() ou App.onShow(). Il ne peut pas être obtenu à partir de la fonction de cycle de vie de la page.


3. Lors du transfert de contenu vers un seul utilisateur, le shareTicket ne peut pas être obtenu.

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