方法一:加时间戳 但是有个问题就是src变了 h5的页面栈增加了
// 加时间戳 防止缓存
因为我的h5地址是vue哈希模式的 所以时间戳加在后边参数无效 需要加在#后才行 所以如果需要刷新h5页面就加一个这样的时间戳就好了
// 加时间戳 防止缓存
if (url.includes("/#")) {
url = url.split('#')[0].split('?')[0] + '?v=' + new Date().getTime() + '/#' + url.split('#')[1]
}
处理后就是这样
方法2.增加wx:if来重新渲染视图
<web-view wx:if="{{url}}" src="{{url}}" bindmessage="onMessage"></web-view>
// 刷新webview
refreshWebview () {
let tmpUrl = this.data.url;
this.setData({
url: ''
});
setTimeout(() => {
this.setData({
url: tmpUrl
})
}, 100);
}