uniapp 微信小程序 vue3 minxs全局分享处理

386 阅读1分钟

vue3还是可以写mixins的,全局挂载,所以我把微信的分享事件写在这了,但有些页面要自定义分享格式,无法直接在页面级覆盖全局的事件

解决方法:

在onLoad或onShow里面覆盖:

onShow(() => {
		
		//分享朋友
		onShareAppMessage(() => {
			return {
				title: auctionData.value.name,
				path: `/pages/production/info?id=${productionId.value}`,
				imageUrl: auctionData.value.image,
			}
		})
	});

mixins文件

share.js

// share.js
export default {
  data() {
    return {
      miniShareOptions: {
        title: '默认标题', // 分享标题
        path: '/pages/index/index', // 默认分享路径
        imageUrl: '/static/images/share.png' // 分享图片路径
      }
    };
  },
  onShareAppMessage() {
    return {
      ...this.miniShareOptions
    };
  },
  onShareTimeline() {
    return {
      title: this.miniShareOptions.title,
      imageUrl: this.miniShareOptions.imageUrl
    };
  }
};