微信小程序分享功能onShareAppMessage(options)用法分析
本文实例讲述了微信小程序分享功能onShareAppMessage(options)用法。分享给大家供大家参考,具体如下:
在页面的js文件中定义了onShareAppMessage函数时,页面可以表示改页面可以转发。可以在函数中设置页面转发的信息。
1.只有定义了该函数,小程序右上角的菜单中才会有转发按钮
2.用户点击转发按钮的时候回调用该函数
3.该函数内需要return一个Object,Object中包含转发的信息(可自定义转发的内容)
页面中有可以触发转发时间的地方有两个:
一个是右上角菜单中的转发按钮
另一个是页面中具有属性open-type且其值为share的button。(注:必须是button组件,其他组件中设置open-type="share"无效)
即:
转发
注意:实际开发中会发现这个button自带有样式,当背景颜色设置为白色的时候还有一个黑色的边框,刚开始那个边框怎么都去不掉,后来给button加了一个样式属性plain="true"以后,再在样式文件中控制样式button[plain]{border:0},就可以比较随便的自定义样式了,比如说将分享按钮做成一个图标等
触发分享事件后调用的函数:
onShareAppMessage:function(options){
varthat=this;
//设置菜单中的转发按钮触发转发事件时的转发内容
varshareObj={
title:"转发的标题",//默认是小程序的名称(可以写slogan等)
path:'/pages/share/share',//默认是当前页面,必须是以‘/'开头的完整路径
imageUrl:'',//自定义图片路径,可以是本地文件路径、代码包文件路径或者网络图片路径,支持PNG及JPG,不传入imageUrl则使用默认截图。显示图片长宽比是5:4
success:function(res){
//转发成功之后的回调
if(res.errMsg=='shareAppMessage:ok'){
}
},
fail:function(){
//转发失败之后的回调
if(res.errMsg=='shareAppMessage:failcancel'){
//用户取消转发
}elseif(res.errMsg=='shareAppMessage:fail'){
//转发失败,其中detailmessage为详细失败信息
}
},
complete:fucntion(){
//转发结束之后的回调(转发成不成功都会执行)
}
};
//来自页面内的按钮的转发
if(options.from=='button'){
vareData=options.target.dataset;
console.log(eData.name);//shareBtn
//此处可以修改shareObj中的内容
shareObj.path='/pages/btnname/btnname?btn_name='+eData.name;
}
//返回shareObj
returnshareObj;
}
希望本文所述对大家微信小程序开发有所帮助。