栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > Web开发 > JavaScript

(干货)微信小程序转发好友

JavaScript 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

(干货)微信小程序转发好友

今天简单地说下微信小程序的转发功能,为什么要简单的说下呢,因为主要讲的就是转发给好友或者群组,还有一种是分享到朋友圈,这种就比较复杂一点了,先稍微透漏一点,分享到朋友圈主要是两种方法,一种是后台直接生成海报图,一种是前端通过canvas生成海报。以后有机会再详细说,好了,言归正传继续说我们的转发好友。

首先介绍一个微信小程序的API:onShareAppMessage(options)

在 Page 中定义 onShareAppMessage 函数,设置该页面的转发信息。

  • 只有定义了此事件处理函数,右上角菜单才会显示 “转发” 按钮
  • 用户点击转发按钮的时候会调用
  • 此事件需要 return 一个 Object,用于自定义转发内容
options 参数说明

自定义转发字段

还有一个值那就是shareTickets他是转发成功返回的,并且是个数组,每一项是一个 shareTicket ,对应一个转发对象

API先说到这,接下来就是转发的实现

先看图:

首先要在onLoad中配置wx.showShareMenu

onLoad: function (e) {
    wx.showShareMenu({
      // 要求小程序返回分享目标信息
      withShareTicket: true
    }); 
  },

然后再配置onShareAppMessage

  onShareAppMessage: function (ops) {
    if (ops.from === 'button') {
      // 来自页面内转发按钮
      console.log(ops.target)
    }
    return {
      title: '转发dom',
      path: `pages/index/index`,
      success: function (res) {
 // 转发成功
 console.log("转发成功:" + JSON.stringify(res));
 var shareTickets = res.shareTickets;
 // if (shareTickets.length == 0) {
 //   return false;
 // }
 // //可以获取群组信息
 // wx.getShareInfo({
 //   shareTicket: shareTickets[0],
 //   success: function (res) {
 //     console.log(res)
 //   }
 // })
      },
      fail: function (res) {
 // 转发失败
 console.log("转发失败:" + JSON.stringify(res));
      }
    }
  },

我解释一下wx.getShareInfo这个可以获取到获取转发详细信息
完整js代码就是

//index.js
//获取应用实例
const app = getApp()

Page({
  data: {
    motto: 'Hello World',
  },
  onLoad: function (e) {
    wx.showShareMenu({
      // 要求小程序返回分享目标信息
      withShareTicket: true
    }); 
  },
  
  onShareAppMessage: function (ops) {
    if (ops.from === 'button') {
      // 来自页面内转发按钮
      console.log(ops.target)
    }
    return {
      title: '转发dom',
      path: `pages/index/index`,
      success: function (res) {
 // 转发成功
 console.log("转发成功:" + JSON.stringify(res));
 var shareTickets = res.shareTickets;
 // if (shareTickets.length == 0) {
 //   return false;
 // }
 // //可以获取群组信息
 // wx.getShareInfo({
 //   shareTicket: shareTickets[0],
 //   success: function (res) {
 //     console.log(res)
 //   }
 // })
      },
      fail: function (res) {
 // 转发失败
 console.log("转发失败:" + JSON.stringify(res));
      }
    }
  },
})

聪明的同学就该知道接下来该是wxml代码


  
   
  
  
    {{motto}}
  

友情提示一下如果点击按钮分享的话,button一定要设置open-type="share"否则不起作用。

如果觉得文章还不错并对你有帮助的话,请分享给你的小伙伴,并点赞,点亮红心的人最美,有什么不懂得可以在底下留言哦。
如果想看源码的话可以去我的github上下载,欢迎star,你的star是对我最大的支持,github:转发好友

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/245882.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号