uniapp 小程序实现分享功能

  1. onShareAppMessage

监听用户点击页面内转发按钮(button 组件 open-type=“share”)或右上角菜单“转发”按钮的行为,并自定义转发内容。微信官方文档

注意:button + open-type = “share” 才会触发 onShareAppMessage事件

<button open-type="share">分享</button>
  • 此事件处理函数需要 return 一个 Object,用于自定义转发内容,返回内容如下
	//小程序分享到微信页面
	onShareAppMessage() {
		const promise = new Promise(resolve => {
      		setTimeout(() => {
        		resolve({
          			title: '自定义转发标题'
        		})
      		}, 2000)
    	})
		return {
			title: '',// 分享标题
			imageUrl: '',//分享封面
			//如果有参数的情况可以写path链接后面”eg: '/pages/index/index?id=23'
			path: ``,//此处链接为要分享的页面链接
			// 如果该参数存在,则以 resolve 结果为准,如果三秒内不 resolve,分享会使用上面传入的默认参数
			//promise
		};
	},
  • onShareTimeline

监听右上角菜单“分享到朋友圈”按钮的行为,并自定义分享内容。

注意:只有定义了此事件处理函数,右上角菜单才会显示“分享到朋友圈”按钮

  onShareTimeline() {
    const shareObj = {
      title: '',// 分享标题
      query: ``, // 自定义页面路径中携带的参数,如 path?a=1&b=2 的 “?” 后面部分 eg: `id=3`
      imageUrl: ''//自定义图片路径,可以是本地文件或者网络图片。支持 PNG 及 JPG,显示图片长宽比是 1:1,默认为小程序logo
    };
    return shareObj;
  },
  • showShareMenu 显示当前页面的转发按钮
		wx.showShareMenu({
			withShareTicket: true, // 是否使用带 shareTicket 的转发详情
			menus: ['shareAppMessage'] // 本接口为 Beta 版本,暂只在 Android 平台支持。需要显示的转发按钮名称列表,默认['shareAppMessage']。按钮名称合法值包含 "shareAppMessage"、"shareTimeline" 两种
		});

注意:

  • "onShareTimeline"表示“发送给朋友”按钮,"shareTimeline"表示“分享到朋友圈”按钮
  • 显示“分享到朋友圈”按钮时必须同时显示“发送给朋友”按钮,显示“发送给朋友”按钮时则允许不显示“分享到朋友圈”按钮
    示例代码
onShareTimeline() {
	return {
		title: '', // 分享出的卡片标题
		path: 'pages/index/index', // 他人通过卡片进入小程序的路径,可以在后面拼接URL的形式带参数
		imageUrl: '', // 分享出去的图片,默认为当前页面的截图。
	};
},

  • 9
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值