uniapp分享微信好友或朋友圈

 页面按钮

<!-- 必须,button按钮 data-name="shareBtn" open-type="share" ,data-obj分享参数 -->
<button data-name="shareBtn" open-type="share" :data-obj="goodDetail">
<view class="function_text">分享</view>
</button>

封装share.js(在项目文件夹下创建utils文件夹,创建share.js文件)

export default {
  data() {
    return {
      // 默认的全局分享内容
      share: {
        title: '古蜀笔记',
        path: '/pages/index',    // 全局分享的路径,比如 首页
        // imageUrl: 'https://s3.dova.link:3001/test/20231225/c74c4f34e7bf48d3b56fb27c368e7180.jpg',    // 全局分享的图片(可本地可网络)
      }
    }
  },
  // 定义全局分享
  // 1.发送给朋友
  onShareAppMessage(res) {
    console.log(res, '获取到的参数');
    let obj = {
      title: this.share.title,
      path: this.share.path,
      // imageUrl: this.share.imageUrl,
    }

    if (res.from == "button") {// 判断是按钮发起的分享(button)还是右上角小程序胶囊发起的分享(menu)
      let pageInfo = res.target.dataset.obj // 页面传过来的参数(goodDetail)
      var pages = getCurrentPages() // 获取栈实例
      let currentPage = pages[pages.length - 1]['$page']['fullPath'] //当前页面路径(带参数)
      obj.title = pageInfo.name
      obj.path = currentPage
      obj.imageUrl = pageInfo.homePhoto
    }
    return obj
  },
  //2.分享到朋友圈
  onShareTimeline(res) {
    return {
      title: this.share.title,
      path: this.share.path,
      // imageUrl: this.share.imageUrl,
    }
  },
}

main.js引入

// 导入并挂载全局的分享方法
import share from '@/utils/share.js'
Vue.mixin(share)

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
微信小程序中,可以通过以下方式来实现分享功能: 1. 分享给朋友: 使用`onShareAppMessage`函数来定义分享给朋友的内容。在该函数中,可以设置分享的标题、路径、图片等,示例如下: ```javascript Page({ onShareAppMessage: function() { return { title: '分享标题', path: '/pages/index/index', imageUrl: '/images/share.png' } } }) ``` 2. 分享朋友圈: 使用`onShareTimeline`函数来定义分享朋友圈的内容。在该函数中,可以设置分享的标题和图片,示例如下: ```javascript Page({ onShareTimeline: function() { return { title: '分享标题', imageUrl: '/images/share.png' } } }) ``` 需要注意的是,`onShareAppMessage`和`onShareTimeline`函数需要定义在小程序页面的`Page`对象中。 另外,为了触发分享操作,你需要在小程序页面中添加一个触发分享的按钮或其他交互元素,例如一个分享按钮: ```html <button bindtap="onShare">分享</button> ``` 然后,在对应的小程序页面的JavaScript代码中,实现触发分享的事件处理函数: ```javascript Page({ // ... onShare: function() { wx.showShareMenu({ withShareTicket: true, menus: ['shareAppMessage', 'shareTimeline'] }) }, onShareAppMessage: function() { // 定义分享给朋友的内容 return { title: '分享标题', path: '/pages/index/index', imageUrl: '/images/share.png' } }, onShareTimeline: function() { // 定义分享朋友圈的内容 return { title: '分享标题', imageUrl: '/images/share.png' } } }) ``` 在`onShare`函数中,通过调用`wx.showShareMenu`方法来显示分享菜单,并设置`menus`参数为`['shareAppMessage', 'shareTimeline']`,表示同时显示分享给朋友和分享朋友圈的选项。 这样,当用户点击分享按钮时,就会触发分享操作,并调用相应的分享函数来定义分享的内容。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值