vue2.0页面前进刷新回退不刷新的实现方法


Posted in Javascript onJuly 31, 2018

花了整整一周时间,尝试过很多种方法,终于找到了最佳的解决方案(对我来说最佳),为了祭奠逝去的一周,也为了释放激动的情绪,现在不得不写篇博客了。

直接上重点:

第一步:

//在APP.vue里面写上keepalive,可以实现缓存(keep-alive是什么?查看官方文档)

vue2.0页面前进刷新回退不刷新的实现方法

第二步:

//在router的index.js里面给需要缓存的页面加上meta参数

vue2.0页面前进刷新回退不刷新的实现方法

第三步:

//在APP.vue里面写,当页面路由发生变化时,将相应页面的滚动位置记录下来,在页面updated时读取并赋值

vue2.0页面前进刷新回退不刷新的实现方法

第四步:

//因为我的想法是从首页(index.vue)进入列表页时刷新数据,从列表页点击进入详情页,再返回列表页时不刷新,

所以从首页进入列表页时,将列表页的isBack设置为false,

然后在列表页的activated生命周期钩子中判断isBack,为false则执行加载函数,为true则使用缓存。

//index.vue中:

vue2.0页面前进刷新回退不刷新的实现方法

//list.vue中

vue2.0页面前进刷新回退不刷新的实现方法

至此,终于完美实现了效果,其实还有可优化的地方,加入需要keepalive的页面很多的话,每一个页面都写相同的beforeRouteLeave和activated就没有必要了,

但是具体怎么优化,等需要用到了再说吧。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
网页自动刷新,不产生嗒嗒声的一个解决方法
Mar 27 Javascript
JavaScript 学习笔记之一jQuery写法图片等比缩放以及预加载
Jun 28 Javascript
JS格式化数字金额用逗号隔开保留两位小数
Oct 18 Javascript
学习JavaScript编程语言的8张思维导图分享
Mar 27 Javascript
Bootstrap3使用typeahead插件实现自动补全功能
Jul 07 Javascript
JavaScript中的this使用详解
Jul 27 Javascript
js实现文字超出部分用省略号代替实例代码
Sep 01 Javascript
jQuery EasyUI 获取tabs的实例解析
Dec 06 Javascript
详解js的事件代理(委托)
Dec 22 Javascript
JS数组属性去重并校验重复数据
Jan 10 Javascript
js节流防抖应用场景,以及在vue中节流防抖的具体实现操作
Sep 21 Javascript
JavaScript实现网页动态生成表格
Nov 25 Javascript
Node.js log4js日志管理详解
Jul 31 #Javascript
jQuery 实现倒计时天,时,分,秒功能
Jul 31 #jQuery
JS实现移动端触屏拖拽功能
Jul 31 #Javascript
JavaScript new对象的四个过程实例浅析
Jul 31 #Javascript
Vue 路由 过渡动效 数据获取方法
Jul 31 #Javascript
JS实现判断图片是否加载完成的方法分析
Jul 31 #Javascript
JavaScript+Canvas实现彩色图片转换成黑白图片的方法分析
Jul 31 #Javascript
You might like
完善CodeIgniter在IDE中代码提示功能的方法
2014/07/19 PHP
PHP中大于2038年时间戳的问题处理方案
2015/03/03 PHP
php htmlentities()函数的定义和用法
2016/05/13 PHP
php实现基于openssl的加密解密方法
2016/09/30 PHP
php获取文章内容第一张图片的方法示例
2017/07/03 PHP
超级兔子让浮动层消失的前因后果
2007/03/09 Javascript
js表数据排序 sort table data
2009/02/18 Javascript
js 模拟实现类似c#下的hashtable的简单功能代码
2010/01/24 Javascript
在iframe里的页面编写js,实现在父窗口上创建动画效果展开和收缩的div(不变动iframe父窗口代码)
2011/12/20 Javascript
js的压缩及jquery压缩探讨(提高页面加载性能/保护劳动成果)
2013/01/29 Javascript
PHP开发者必须掌握的6个关键字
2014/04/14 Javascript
JS实现网页游戏中滑块响应鼠标点击移动效果
2015/10/19 Javascript
ECHO.js 纯javascript轻量级延迟加载的实例代码
2016/05/24 Javascript
手机图片预览插件photoswipe.js使用总结
2016/08/25 Javascript
JavaScript制作简单的框选图表
2017/05/15 Javascript
理解Koa2中的async&await的用法
2018/02/05 Javascript
Vue $mount实战之实现消息弹窗组件
2019/04/22 Javascript
webpack + vue 打包生成公共配置文件(域名) 方便动态修改
2019/08/29 Javascript
vue动态子组件的两种实现方式
2019/09/01 Javascript
Vue全局使用less样式,组件使用全局样式文件中定义的变量操作
2020/10/21 Javascript
[12:29]《一刀刀一天》之DOTA全时刻19:蝙蝠骑士田伯光再度不举
2014/06/10 DOTA
Python中extend和append的区别讲解
2019/01/24 Python
Python matplotlib以日期为x轴作图代码实例
2019/11/22 Python
tensorflow mnist 数据加载实现并画图效果
2020/02/05 Python
在echarts中图例legend和坐标系grid实现左右布局实例
2020/05/16 Python
解决python中0x80072ee2错误的方法
2020/07/19 Python
python 如何调用 dubbo 接口
2020/09/24 Python
澳大利亚首屈一指的鞋类品牌:Tony Bianco
2018/03/13 全球购物
Linux开机引导的步骤是什么
2015/10/19 面试题
如何通过jdbc调用存储过程
2012/04/19 面试题
剪枝的学问教学反思
2014/02/07 职场文书
读书小明星事迹材料
2014/05/03 职场文书
解除劳动合同协议书范本
2014/09/13 职场文书
违规违纪检讨书范文
2015/05/06 职场文书
Golang原生rpc(rpc服务端源码解读)
2022/04/07 Golang
MySQL生成千万测试数据以及遇到的问题
2022/08/05 MySQL