创建一个混入
export default {data() {return {//设置默认的分享参数//如果页面不设置share,就触发这个默认的分享share: {title: '商会宝',//自定义标题path: `/pages/home/home?appId=${uni.getStorageSync("appid")}`, //默认跳转首页imageUrl: '', //可设置默认分享图,不设置默认截取头部5:4}}},onShareAppMessage(res) { //发送给朋友// let that = this;console.log(this.share)return {title: this.share.title,path: this.share.path,imageUrl: this.share.imageUrl,success(res) {console.log('success(res)==', res);uni.showToast({title: '分享成功'})},fail(res) {console.log('fail(res)==', res);uni.showToast({title: '分享失败',icon: 'none'})}}},onShareTimeline(res) { //分享到朋友圈//下面的代码是获取页面栈,自动分享,如果有自定义分享的话,可以单个页面设置// let that = this// 动态获取当前页面栈// let pages = getCurrentPages(); //获取所有页面栈实例列表// let nowPage = pages[pages.length - 1]; //当前页页面实例// // let prevPage = pages[pages.length - 2]; //上一页页面实例// that.share.path = `/${nowPage.route}`return {title: this.share.title,path: this.share.path,imageUrl: this.share.imageUrl,success(res) {console.log('success(res)==', res);uni.showToast({title: '分享成功'})},fail(res) {console.log('fail(res)==', res);uni.showToast({title: '分享失败',icon: 'none'})}}},
}
在main.js文件里面进入引入挂载
// 全局分享
// 小程序分享的封装
import share from "./utils/share.js"
Vue.mixin(share)
然后在每个页面使用this.share就可以获取混入的data,进行修改即可