首先创建一个全局分享JS
export default{
data(){
return {
//设置默认的分享参数
//如果页面不设置share,就触发这个默认的分享
share:{
title:'share测试',
path:'/pages/index/index',
imageUrl:'',
desc:'',
content:''
}
}
},
onShareAppMessage(res) {
return {
title:this.share.title,
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'
})
}
}
}
}
全局代码引用share
我把share.js放在了common里面
![](https://i-blog.csdnimg.cn/blog_migrate/9b841b4e5b622f2b423b83958af481d5.png)
image.png
然后在main.js中引用share
![](https://i-blog.csdnimg.cn/blog_migrate/33955512dc98bdda6c40a072c0f34ea2.png)
image.png
import share from '@/static/js/mixins/share.js'
Vue.mixin(share)
使用
需要说的是每个页面都需要写以下代码,如果不自定义的参数就留空,如果自定义就填写自定义的。
不写以下代码也可以分享,只不过分享的是首页
export default {
data() {
return {
//开始
share:{
title:"",
path:'',
imageUrl:'',
desc:'',
content:''
}
}
//结束
},
![](https://i-blog.csdnimg.cn/blog_migrate/380805600c70be837124798d91860278.png)
这个是没有写share的页面分享出来的,点击就会进入首页
![](https://i-blog.csdnimg.cn/blog_migrate/bcbf08a443696d33fa47ff2b509dcf5a.png)
这个是写了的,点击进入分享的文章页面