默认当前是哪个页面,分享点进来就是哪个页面,这样有问题,点进来应该进入欢迎页,即等同于重新进入小程序。
每个页面的onShareAppMessage可以进行配置,但都是重复代码没必要每个页面都写。
在App.vue 里的加入以下代码。
globalData: { overShare: () => { //监听路由切换, 间接实现全局设置分享内容 uni.onAppRoute(res => { console.log("间接实现全局设置分享内容"); //获取加载的页面 const pages = getCurrentPages(), //获取当前页面的对象 view = pages[pages.length - 1]; if (view) { //全局触发 显示出分享具栏 wx.showShareMenu({ withShareTicket: true, //设置下方的Menus菜单,才能够让发送给朋友与分享到朋友圈两个按钮可以点击 menus: ["shareAppMessage", "shareTimeline"] }) view.onShareAppMessage = () => { //分享配置 return { title: '解决方案', path: '/pages/main/main', //imageUrl: '/static/images/xxxxx.png',
success(res) {
uni.showToast({
title: '分享成功'
})
},
fail(res) {
uni.showToast({
title: '分享失败',
icon: 'none'
})
} }; }; } }) }, }, onLaunch() { this.globalData.overShare(); }