vue keep-alive列表页缓存 详情页返回上一页不刷新,定位到之前位置


Posted in Javascript onNovember 26, 2019

需求:

商品列表页面浏览,进入商品详情,点击返回仍然是之前浏览的位置

vue keep-alive列表页缓存 详情页返回上一页不刷新,定位到之前位置

实现:

使用 vuekeep-aliveinclude 属性给组件做动态缓存,从详情页返回不变,从其他页面进入列表页则刷新

加需要缓存的列表页面定义一个数据集在 vuex

state:{
  pageListArr:[]
}

列表页的 nameproList ,详情页的 nameproDetail ,只有 PageListArr 包含的字段才会被缓存,如 pageListArr.push("proList")

<keep-alive :include="pageListArr">
  <router-view></router-view>
</keep-alive>

思路:

在页面初始化前,获取来源页面的 name 和要去加载页面的 name .

vue keep-alive列表页缓存 详情页返回上一页不刷新,定位到之前位置

在这里使用全局导航守卫

router.beforeEach((to, from, next) => {
 // 来源页面name -> from.name
 // 去往页面name -> to.name
 // 如果要跳转的页面为商品列表,且不是从商品详情返回或者跳转
 if(to.name===`proList`&&from.name!==`proDetail`){
   pageListArr.push(`proList`)
 }
 // 来源为商品页面返回列表页面
 if(to.name===`proList`&&from.name===`proDetail`){
   console.log(`不做处理`)
 }
})

当多个不同的列表页面需要设置缓存时,如分类商品列表,活动商品列表

需要先判断 pageListArr 是否已缓存某些页面,只有从商情详情返回已缓存的列表页才是无刷新,未缓存的列表页面仍然需要新缓存

vue keep-alive列表页缓存 详情页返回上一页不刷新,定位到之前位置

总结

以上所述是小编给大家介绍的vue keep-alive列表页缓存 详情页返回上一页不刷新,定位到之前位置,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
读jQuery之二(两种扩展)
Jun 11 Javascript
javascript 随机展示头像实现代码
Dec 06 Javascript
每天一篇javascript学习小结(RegExp对象)
Nov 17 Javascript
AngularJS Ajax详解及示例代码
Aug 17 Javascript
Node.js开启Https的实践详解
Oct 25 Javascript
AngularJS监听ng-repeat渲染完成的两种方法
Jan 16 Javascript
setTimeout时间设置为0详细解析
Mar 13 Javascript
深入理解JavaScript和TypeScript中的class
Apr 22 Javascript
vue接入腾讯防水墙代码
May 07 Javascript
微信小程序语音同步智能识别的实现案例代码解析
May 29 Javascript
5个你不知道的JavaScript字符串处理库(小结)
Jun 01 Javascript
最新最全的手机号验证正则表达式
Feb 24 Javascript
JavaScript的变量声明与声明提前用法实例分析
Nov 26 #Javascript
vue中keep-alive,include的缓存问题
Nov 26 #Javascript
JS插件amCharts实现绘制柱形图默认显示数值功能示例
Nov 26 #Javascript
jQuery与原生JavaScript选择HTML元素集合用法对比分析
Nov 26 #jQuery
原生js实现贪食蛇小游戏的思路详解
Nov 26 #Javascript
高效jQuery选择器的5个技巧实例分析
Nov 26 #jQuery
JavaScript计算正方形面积
Nov 26 #Javascript
You might like
IIS6+PHP5+MySQL5+Zend Optimizer+phpMyAdmin安装配置图文教程 2009年
2009/06/08 PHP
php标签云的实现代码
2012/10/10 PHP
php文件缓存类汇总
2014/11/21 PHP
PHP实现上传图片到 zimg 服务器
2016/10/19 PHP
PHP实现生成模糊图片的方法示例
2017/12/21 PHP
基于jQuery的ajax功能实现web service的json转化
2009/08/29 Javascript
JavaScript ECMA-262-3 深入解析.第三章.this
2011/09/28 Javascript
javascript 实现字符串反转的三种方法
2013/11/23 Javascript
JavaScript表单通过正则表达式验证电话号码
2014/03/14 Javascript
用JavaScript判断CSS浏览器类型前缀的两种方法
2015/10/08 Javascript
JS实现控制图片显示大小的方法【图片等比例缩放功能】
2017/02/18 Javascript
简单实现js上传文件功能
2017/08/21 Javascript
Vue-cli 使用json server在本地模拟请求数据的示例代码
2017/11/02 Javascript
layer.js open 隐藏滚动条的例子
2019/09/05 Javascript
js实现开关灯效果
2020/03/30 Javascript
Js代码中的span拼接问题解决
2019/11/22 Javascript
[01:46]DOTA2上海特锦赛小组赛英文解说KotlGuy采访
2016/02/27 DOTA
详解python中xlrd包的安装与处理Excel表格
2016/12/16 Python
Python如何快速实现分布式任务
2017/07/06 Python
python3的输入方式及多组输入方法
2018/10/17 Python
详解python列表生成式和列表生成式器区别
2019/03/27 Python
Python实现的对一个数进行因式分解操作示例
2019/06/27 Python
树莓派使用python-librtmp实现rtmp推流h264的方法
2019/07/22 Python
Python中bisect的使用方法
2019/12/31 Python
利用python在excel中画图的实现方法
2020/03/17 Python
Python新手学习函数默认参数设置
2020/06/03 Python
没编程基础可以学python吗
2020/06/17 Python
python如何从键盘获取输入实例
2020/06/18 Python
详解HTML5中表单验证的8种方法介绍
2016/12/19 HTML / CSS
办理生育手续介绍信
2014/01/14 职场文书
小班开学寄语
2014/04/04 职场文书
2015年春节标语口号
2014/12/09 职场文书
大三学生英语考试作弊检讨书
2015/01/01 职场文书
工程竣工验收申请报告
2015/05/15 职场文书
Java中多线程下载图片并压缩能提高效率吗
2021/07/01 Java/Android
手把手教你导入Go语言第三方库
2021/08/04 Golang