微信小程序 对onShareAppMessage进行封装,分为分享到个人和分享到群

1.底层代码封装到util工具js里面


function onShareAppMessage(title, path, callback, imageUrl) {
  //设置一个默认分享背景图片
  let defaultImageUrl = '../../images/share.jpg';
  return {
    title: title,
    path: path,
    imageUrl: imageUrl || defaultImageUrl,
    success(res) { 
      console.log("转发成功!");
      if (!res.shareTickets) {
      	//分享到个人
        api.shareFriend().then(() => {
          console.warn("shareFriendSuccess!");
          //执行转发成功以后的回调函数
          callback && callback();
        });
      } else {
      	//分享到群
        let st = res.shareTickets[0];
        wx.getShareInfo({
          shareTicket: st,
          success(res) {
            let iv = res.iv
            let encryptedData = res.encryptedData;
            api.groupShare(encryptedData, iv).then(() => {
              console.warn("groupShareSuccess!");
              //执行转发成功以后的回调函数
              callback && callback();
            });
          }
        });
      }
    },
    fail: function (res) {
      console.log("转发失败!");
    }
  };
}
 
//将其方法导出
module.exports = {
  onShareAppMessage: onShareAppMessage
}

2.调用示例

/**
   * 用户点击右上角分享
   */
  onShareAppMessage: function (e) {
    let nickName = '';
    try {
      nickName = getApp().globalData.userInfo.nickName;
    } catch (e) {
      console.warn("用户未授权!");
      nickName = '有人';
    }
    let title = `[${nickName}@我]帮我看看这个叫什么,经常吃却不知道名字`;;
    let path = '/pages/index/index';
    let shareCallBack = () => {
    	//分享成功后做的事情
        //
        //
    };
    //此处调用封装好的分享代码
    return util.onShareAppMessage(title, path, shareCallBack);
  }

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值