在微信小程序的开发中,我们经常遇到把当前页面转发给好友的需求。并且大部分时候,转发的页面都是带参数的。这里面坑还是比较多的。
<button open-type="share" type="primary">
分享给好友
</button>
首先我们先写一个button
按钮,很重要的一个点就是button
按钮的open-type
属性,这个一定要写为share
。
其实,这其中的实际原理就是通过按钮触发onShareAppMessage
这个生命周期函数。
onShareAppMessage: function (res) {
var that = this;
console.log(JSON.stringify(that.data.array))
return {
title:that.data.array.name,
path:'pages/detail/detail?array=' + JSON.stringify(that.data.array),
imageUrl:that.data.array.pic
}
}
})
最关键的是要return
一个对象出去,核心的就三个属性,title
,path
,imageUrl
title
就是标题,path
就是点击之后跳转的页面路径,imageUrl
就是展示的图片。
这个path
是支持传参的,因为大部分的需求都是要带参数的。
我这个小程序是一个菜谱小程序,用户看到满意的一道菜,想分享给朋友,朋友点击链接进去之后,一定是要跳转到我看到的那道菜的,所以这个需求必然是要通过url
传参实现的。
顺便打个广告,我最近开发的一个菜谱小程序,目前一万多道菜展示中,欢迎体验。
微信直接搜索小程序:超级菜谱A
以上就可以实现预期的功能了,并且可以准确跳转转发的那个页面。