美文网首页
ios 页面后退不重新加载问题

ios 页面后退不重新加载问题

作者: 前端程序员小白 | 来源:发表于2019-03-18 14:49 被阅读0次

使用history.go(-1)回退页面,结果数据不重新加载,处理过的数据还留在页面上,容易出现二次处理报错的问题。

安卓是没有问题的。

使用此方法可以解决加载问题。不限于ios或者android.只要页面显示就可以使用此方法。

```

window

.addEventListener('pageshow',function(e){

// 通过persisted属性判断是否存在 BF Cache

if(e.persisted) {

        location.reload();

    }

````

原理:pageShow事件在页面显示即会触发,无论页面是否来自BF Cache。通过检测persisted属性即可判断是否存在 BF Cache 行为。

优点:大部分浏览器都支持pageShow方法与persisted属性,并且需要的代码量只需要短短4行即可。

缺点:每种浏览器中BF Cache的机制是不同的,部分浏览器中的Bf Cache还是会重新执行js代码,会造成重复渲染效果。当然现在我们只考虑Ios中的微信页面, 所以是不存在问题。

相关文章

  • ios 页面后退不重新加载问题

    使用history.go(-1)回退页面,结果数据不重新加载,处理过的数据还留在页面上,容易出现二次处理报错的问题...

  • iOS性能优化之页面加载速率

    iOS性能优化之页面加载速率 iOS性能优化之页面加载速率

  • 微信开发踩过的坑

    微信浏览器的缓存 可怕的页面缓存,微信中点后退不会重新发请求,但页面却会重新渲染,应该是从缓存中加载了,导致一些异...

  • Echarts绘制页面

    主要是记录绘制页面的时候要,重新渲染,不然有问题 重新绘制,重新加载数据

  • vue页面实现前进刷新,后退不刷新

    背景 业务需求,实现跳转进页面的时候重新加载页面,后退的时候保持缓存。搜索了很多的回答,大概有几种方法:1、kee...

  • angualr+ionic 在ios手机端滚动条问题

    最近在做项目时,发现ionic框架搭建的页面在Android和ios手机端的问题,在ios手机端加载更多数据时,不...

  • 项目常见bug收集

    1、https页面加载http资源导致在IOS下报错的问题 解决:属于跨域范畴,要加载相同协议的资源。如:页面引入...

  • 微信自带浏览器物理返回不刷新问题

    问题描述与需求 微信中页面后退不会重新发请求,但页面却会重新渲染 解决 在发起Ajax请求时,在请求链接上加时间戳...

  • APP全局说明

    一、异常页面 1、图标 显示加载失败预置图 2、重新加载 加载失败时,页面提示“加载失败啦,请点击重新设置!” 交...

  • 使用webView_flutter在安卓设备崩溃

    在flutter中使用webview_flutter加载一个H5页面,在安卓设备上,加载后退出页面,再次进入加载H...

网友评论

      本文标题:ios 页面后退不重新加载问题

      本文链接:https://www.haomeiwen.com/subject/bcgvmqtx.html