普通转发
小程序的分享可以来自用户点击 button 按钮,也可以用户主动点击右上角的分享,都会调取 onShareAppMessage 这个函数。
Page({onShareAppMessage: function (res) {console.log('开始分享')if (res.from === 'button') {console.log(res.target)}return {title: '自定义转发标题',path: '/page/user?id=123',imageUrl: ''}}
})
1. 按钮分享
需要在页面上的 button 按钮上加 open-type="share"
2. 右上角分享
用户点击直接触发函数
小科普:小程序取消了分享成功失败的回调函数,如下图所示,所以没法检测用户是否分享成功,只能够检测用户点开分享的这个动作
webview分享
目录结构:
├── pages
│ ├── web-view
│ │ ├── web-view.js
│ │ ├── web-view.wxml
<web-view src&#61;"{{ url }}"bindload&#61;"loadFinish"bindmessage&#61;"messageFinish" />
onLoad: function (options) {if (options.url) {this.setData({url: decodeURIComponent(options.url)})}
},
onShareAppMessage: function (options) {return {path: &#39;/pages/web-view/web-view?url&#61;&#39; &#43; encodeURIComponent(options.webViewUrl)}
}
wx.navigateTo({url: &#39;/pages/web-view/web-view?url&#61;&#39; &#43; encodeURIComponent(url)})
})