小程序内嵌H5(webview),调起微信分享
该功能时作为H5调起小程序的微信分享
1:小程序方 在webview页面,打开分享的权限
wx.showShareMenu({ withShareTicket:true, menu:['shareTimeline','shareAppMessage'] })
2:在小程序内写 onShareAppMessage方法,用来获取在哪个页面调起的微信分享,
onShareAppMessage: function(res) { console.log(res) let nowURL = decodeURIComponent(res.webViewUrl) let id = nowURL.split('?')[1].split('&')[0].split('=')[1] let name = decodeURIComponent(nowURL.split('?')[1].split('&')[1].split('=')[1]) let data = { id: id, name: name, } let payData = JSON.stringify(data) let url = `/pages/music/music?data=${payData}` return { title: name, path: url, } },
3:在2中的这处代码,是用来劫持分享,并自定义分享的,
let payData = JSON.stringify(data) let url = `/pages/music/music?data=${payData}` return { title: name, path: url, }
4:转发出去后,通过用户的点击再次回来时,在webview页面获取是否有参
onLoad: function(e) { console.log(e) if (e.data) { console.log(e)ghu let i = JSON.parse(e.data) console.log(i) this.url = 'http://192.****8080/?hrsaasUserId=95623&id='+i.id+'&name='+ i.name console.log(this.url) } else { this.url = 'http://192.****:8080/?hrsaasUserId=95623' }
如果有参,就是通过分享页面进来的,跳入webview页面
如果无参,就认为是从首页点进来的 不做处理
5:在H5的onload处 获取参数,逻辑同4, 有参就跳入你想进的页面
if(e.data){ uni.navigateTo({ url:'/pages/consulting/scaleDetail?id='+this.scaleId+'&name='+encodeURIComponent(this.scaleName)+'&questionType=0&isPay=0', })
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理!
部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!
图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!