微信小程序分享

微信小程序已经支持分享到好友朋友圈功能(安卓),用户在朋友圈打开分享的小程序页面,并不会真正的打开小程序,而是进入一个“小程序单页面模式”的页面;

微信小程序文档:https://developers.weixin.qq.com/miniprogram/dev/reference/api/Page.html#onShareTimeline

微信小程序单页面模式:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/share-timeline.html#%E8%AE%BE%E7%BD%AE%E5%88%86%E4%BA%AB%E7%8A%B6%E6%80%81


单页面模式:

“单页模式”下,一些组件或接口存在一定限制
1、页面无登录态,与登录相关的接口,入wx.login()均不可用;
2、不允许跳转其他页面,包括跳转小程序页面,跳转其他小程序,跳转微信原生页面;
3、不允许横屏,页面包含的tabbar不会渲染,包括自定的tabbar;
4、 本地储存与小程序普通模式不共用;

具体详情,请查看:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/share-timeline.html#%E5%8D%95%E9%A1%B5%E6%A8%A1%E5%BC%8F%E4%B8%8B%E7%9A%84%E9%99%90%E5%88%B6

微信小程序实现转发分享功能(好友朋友圈)-编程知识网


实现分享:

分享参数都是可配置的,分享朋友圈是建立在分享朋友的基础之上的:

1、首先设置页面允许“发送给朋友” onShareAppMessage(Object object);

2、页面设置允许“分享到朋友圈” onShareTimeline();

满足上述两个条件的页面,可被分享到朋友圈。

onShareAppMessage: function () {const { info, code } = that.data;return {title: info.name,path: `/pages/share/index?code=${code}&uid=${wx.getStorageSync('uid')}`,imageUrl: info.thumbnail_url}},onShareTimeline: function(){const { info, code } = that.data;return {title: info.name,query: `code=${code}&uid=${wx.getStorageSync('uid')}`,imageUrl: info.thumbnail_url}}

 打开分享页:

好友打开分享的页面,执行相应的接口数据;

 onLoad: function (options) {if(options.code&&options.uid){console.log(options.code)console.log(options.uid)}},

总结:

微信小程序分享朋友圈还是有很多局限性的,比如用户在朋友圈中打开的而并非是我们分享的小程序,需要我们在跳转小程序才能执行我们的逻辑;

而且分享朋友圈目前只支持安卓,觉得功能并不完善,大家根据项目需要吧,个人觉得有点鸡肋!