问题是:使用web-view内嵌h5页面分享后,点击分享打开的不是分享时的h5网页
我的实现过程是:
一、分享时(已经没有问题)
我是在web-view中内嵌了h5网页,用户在h5网页中已经多次跳转了,分享时,我设置的链接地址是
onShareAppMessage: function (res) { return { ///res.webViewUrl这就是web-view中的网址 title: 'XX小程序' , desc: 'XX小程序' , path: "/pages/index/index?url=" + res.webViewUrl } } |
经过验证分享的地址是正确的,没有什么问题,关键是用户打开分享的小程序时,总是显示的是首页,不是当时分享的那个页面。
二、用户点击打开分享时(有问题)
用户打开分享页后,我的实现如下
data: { MY_HOME: "https://xxx.gov.cn/index.html" , },
this .setData({MY_HOME: res.url}); } }, |
视图的代码是
<!--index.wxml--> <view class= "container" > <web-view src= "{{MY_HOME}}" ></web-view> </view> |
按说,用户点击分享的小程序/pages/index/index?url=https://xxx.gov.cn/2.html后,小程序在加载时获取到https://xxx.gov.cn/2.html地址,并把此地址改变到MY_HOME中,同时视图中的<web-view src="{{MY_HOME}}"></web-view>中的地址也立即改变,不就是实现了打开分享前的页面吗?
可实际是不是那么回事,总是打开的首页,仿佛this
.setData({MY_HOME: res.url});没有起作用,视图根本没有改变,为什么?请大师们帮助我。谢谢。
先在web端
wx.miniProgram.postMessage({ webUrl: window.location.href })
然后在分享就可以拿到了
onShareAppMessage: function (res) { return { ///res.webViewUrl这就是web-view中的网址 title: 'XX小程序' , desc: 'XX小程序' , path: "/pages/index/index?url=" + res.webViewUrl } } |