小程序 分享 wx.showShareMenu()
全局分享
wx.showShareMenu如果想要每个页面都能分享,就需要每个页面都设置一遍,有没有方法可以一次设置为全局开启?
- shareAppMessage 分享好友
- shareTimeline 分享朋友圈
//app.js
App({
onLaunch: function () {
this.overShare()
},
overShare:function() {
// 监听路由切换
wx.onAppRoute(function(res) {
let pages = getCurrentPages()
let view = pages[pages.length - 1]
if(view) {
wx.showShareMenu({
withShareTicket:true,
menus:['shareAppMessage','shareTimeline']
})
}
})
}
})
首页(局部)分享
首页或其他页面的js文件 中 进行设置
1. 直接写方法
onLoad() {
this.overShare()
},
overShare() {
wx.showShareMenu({
withShareTicket:true,
menus:['shareAppMessage']
})
},
2. 在小程序指定钩子(onShareAppMessage)中写
onShareAppMessage(){
wx.showShareMenu({
withShareTicket:true,
menu:['shareAppMessage'] // 'shareAppMessage' -- > 分享给好友, 'shareTimeline' -- > 分享朋友圈
})
return {
title:'分享的名称',
imageUrl:'分享时要展示的图片'
}
}