其实有两种情况,这篇先写是页面右上角菜单显示“转发”按钮的,而且只有定义了 onShareAppMessage(),页面右上角菜单才会显示“转发”按钮。
mixin全局混入
utils文件夹下新建一个share.js文件,内容为:
data(){
return {
//设置默认的分享参数
share:{
title:'',
path:'',
imageUrl:'',
desc:'',
content:''
}
}
},
onShareAppMessage(res) {
return {
title:'xxxxxxx',
path:this.share.path,
imageUrl:this.share.imageUrl,
desc:this.share.desc,
content:this.share.content,
success(res){
uni.showToast({
title:'分享成功'
})
},
fail(res){
uni.showToast({
title:'分享失败',
icon:'none'
})
}
}
}
最后在main.js里面注册
import share from './utils/share.js'
Vue.mixin(share)
mixin,不懂的看这里:以uniapp开发小程序举例,使用mixin实现各个页面的分享功能
在小程序中如果想实现分享功能,需要在各个组件中单独写分享方法,如果页面太多的话,通过使用mixin来简化这个流程。