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 相关文章推荐
javascript hashtable实现代码
Oct 13 Javascript
jquery序列化form表单使用ajax提交后处理返回的json数据
Mar 03 Javascript
jquery easyui 结合jsp简单展现table数据示例
Apr 18 Javascript
浅析JavaScript动画
Jun 10 Javascript
jquery实现LED广告牌旋转系统图片切换效果代码分享
Aug 26 Javascript
Vue.directive自定义指令的使用详解
Mar 10 Javascript
又一款MVVM组件 构建自己的Vue组件(2)
Mar 13 Javascript
解决iview打包时UglifyJs报错的问题
Mar 07 Javascript
详解React项目的服务端渲染改造(koa2+webpack3.11)
Mar 19 Javascript
收集前端面试题之url、href、src
Mar 22 Javascript
Vue+Element-UI实现上传图片并压缩
Nov 26 Javascript
详解TypeScript中的类型保护
Apr 29 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
基于php权限分配的实现代码
2013/04/28 PHP
PHP中鲜为人知的10个函数
2014/02/28 PHP
CodeIgniter配置之database.php用法实例分析
2016/01/20 PHP
利用PHP将图片转换成base64编码的实现方法
2016/09/13 PHP
DEDE实现转跳属性文档在模板上调用出转跳地址
2016/11/04 PHP
PHP基于XMLWriter操作xml的方法分析
2017/07/17 PHP
php array_map()函数实例用法
2021/03/03 PHP
正负小数点后两位浮点数实现原理及代码
2013/09/06 Javascript
node.js实现多图片上传实例
2014/06/03 Javascript
jquery+css3打造一款ajax分页插件(自写)
2014/06/18 Javascript
理解Javascript的动态语言特性
2015/06/17 Javascript
JS基于面向对象实现的拖拽库实例
2015/09/24 Javascript
JS动态插入并立即执行回调函数的方法
2016/04/21 Javascript
原生JavaScript编写canvas版的连连看游戏
2016/05/29 Javascript
javascript经典特效分享 手风琴、轮播图、图片滑动
2016/09/14 Javascript
JavaScript中闭包的详解
2017/04/01 Javascript
angular.js和vue.js中实现函数去抖示例(debounce)
2018/01/18 Javascript
jQuery获取所有父级元素及同级元素及子元素的方法(推荐)
2018/01/21 jQuery
js设置默认时间跨度过程详解
2019/07/17 Javascript
加速vue组件渲染之性能优化
2020/04/09 Javascript
从零学python系列之教你如何根据图片生成字符画
2014/05/23 Python
python常规方法实现数组的全排列
2015/03/17 Python
python中range()与xrange()用法分析
2016/09/21 Python
numpy ndarray 按条件筛选数组,关联筛选的例子
2019/11/26 Python
Python类及获取对象属性方法解析
2020/06/15 Python
python利用google翻译方法实例(翻译字幕文件)
2020/09/21 Python
python subprocess pipe 实时输出日志的操作
2020/12/05 Python
吉力贝官方网站:Jelly Belly
2019/03/11 全球购物
计算机应用专业推荐信
2013/11/13 职场文书
本科毕业生应聘求职信
2014/07/06 职场文书
团结主题班会
2015/08/13 职场文书
2016年党员岗位承诺书
2016/03/24 职场文书
2016年质量月活动总结报告
2016/04/05 职场文书
Python使用openpyxl批量处理数据
2021/06/23 Python
SQLServer 错误: 15404,无法获取有关 Windows NT 组/用户 WIN-8IVSNAQS8T7\Administrator 的信息
2021/06/30 SQL Server
豆瓣2021评分最高动画剧集-豆瓣评分最高的动画剧集2021
2022/03/18 日漫