引子
最近在做小程序,主要研究方向是对群信息的处理,小程序的大部分功能是基于通过打开转发到群的小程序分享卡片来做的...
首发于个人博客
有关转发的几条 API
- Page.onShareAppMessage
- wx.showShareMenu
- wx.hideShareMenu
- wx.updateShareMenu
- wx.getShareInfo
跟转发有关的 api 总共这5条,接下来简单的介绍这几条 api 并写一下自己在用 mpvue 开发过程中遇到的问题
Page.onShareAppMessage
在 Page 中定义 onShareAppMessage 函数,设置该页面的转发信息。
- 只有定义了此事件处理函数,右上角菜单才会显示 “转发” 按钮
- 用户点击转发按钮的时候会调用
- 此事件需要 return 一个 Object,用于自定义转发内容
需要注意的是应该 只有定义了此事件处理函数,右上角菜单才会显示 “转发” 按钮,如果定义该事件,而又不想让该页面通过 menu 转发,可以通过 hideShareMenu 来隐藏掉
在 mpvue 编译之后应该也给配置了该事件,因为需求问题,有些页面也是单独给隐藏掉的
转发后,可以通过来 from 参数来判断是 menu 菜单转发还是 button 转发, 来进行一些判断。
- 转发成功后,如果未定义 自定义转发字段 ,会使用默认的,不存在转发后,没分享卡片。
- form 字段可以通过在转发成功后调取的 success、complete 来进行对 menu 和 button 的不同操作
- 如果有携带 shareTicket 值,会在 success 回调产生,返回结果在 shareTickets 字段中,是一个数组。
wx.hideShareMenu
隐藏转发按钮
仅仅会隐藏掉 menu 的转发,button 的转发功能还会存在<