vue内置组件keep-alive事件动态缓存实例


Posted in Javascript onOctober 30, 2020

在App.vue文件中配置

<keep-alive>
   <router-view v-if="$route.meta.keepAlive"></router-view>
  </keep-alive>
  <router-view v-if="!$route.meta.keepAlive"></router-view>

在路由中配置

{
    path: '/backstage',
    component: resolve => require(['@/views/backstage/my'], resolve),
    meta: { keepAlive: false }
  },
  {
    path: '/backstage/info',
    component: resolve => require(['@/views/backstage/my/info'], resolve),
    meta: { keepAlive: false }
  },

在页面中利用 beforeRouteLeave 动态处理

export default {
  data() {
    return {};
  },
  methods: {},
  beforeRouteLeave(to, from, next) {
    // 设置下一个路由的 meta
    to.meta.keepAlive = false; // 不缓存
    // to.meta.keepAlive = true; // 缓存
    next();
  }
};

补充知识:vue使用keep-alive后watch事件不销毁解决方案

使用了keep-alive动态缓存页面之后,有一些很难解决的问题:

每个页面里面设置的watch监听事件,如果监听了路由的变化或者vuex的变化,在切换页面的时候watch不会被销毁,导致下一个页面重复触发上一个watch监听的对象,重复请求接口。

解决方案:

定义一个全局 mixin.js

export const mixin = {
 data () {
  return {
   activatedFlag: false
  };
 },
 mounted () {
  this.activatedFlag = true;
 },
 activated () {
  this.activatedFlag = true;
 },
 deactivated () {
  this.activatedFlag = false;
 }
};

在使用keep-alive缓存的页面引入mixin

vue内置组件keep-alive事件动态缓存实例

防止在非当前页面重复触发keep-alive缓存页面的方法

vue内置组件keep-alive事件动态缓存实例

以上这篇vue内置组件keep-alive事件动态缓存实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery异步请求实例代码
Jun 21 Javascript
html+js实现动态显示本地时间
Sep 21 Javascript
JS创建事件的三种方法(实例代码)
May 12 Javascript
微信小程序左滑删除效果的实现代码
Feb 20 Javascript
AngularJS 支付倒计时功能实现思路
Jun 05 Javascript
BootStrap Fileinput上传插件使用实例代码
Jul 28 Javascript
深入理解Vue 的条件渲染和列表渲染
Sep 01 Javascript
vue 循环加载数据并获取第一条记录的方法
Sep 26 Javascript
mpvue+vant app搭建微信小程序的方法步骤
Feb 11 Javascript
Javascript通过控制类名更改样式
May 24 Javascript
layer ui 导入文件之前传入数据的实例
Sep 23 Javascript
在 Vue 中使用 JSX 及使用它的原因浅析
Feb 10 Javascript
Javascript表单序列化原理及实现代码详解
Oct 30 #Javascript
解决Vue-cli无法编译es6的问题
Oct 30 #Javascript
Vue2.0 ES6语法降级ES5的操作
Oct 30 #Javascript
Vue自定义表单内容检查rules实例
Oct 30 #Javascript
探索node之事件循环的实现
Oct 30 #Javascript
使用TS来编写express服务器的方法步骤
Oct 29 #Javascript
微信小程序将页面按钮悬浮固定在底部的实现代码
Oct 29 #Javascript
You might like
PHP将整个网站生成HTML纯静态网页的方法总结
2012/02/05 PHP
php模板函数 正则实现代码
2012/10/15 PHP
Aster vs KG BO3 第一场2.19
2021/03/10 DOTA
clientX,pageX,offsetX,x,layerX,screenX,offsetLeft区别分析
2010/03/12 Javascript
JQuery 技巧和窍门整理(8个)
2010/04/22 Javascript
javascript处理table表格的代码
2010/12/06 Javascript
IFrame跨域高度自适应实现代码
2012/08/16 Javascript
jquery+php实现搜索框自动提示
2014/11/28 Javascript
jQuery控制网页打印指定区域的方法
2015/04/07 Javascript
jQuery切换所有复选框选中状态的方法
2015/07/02 Javascript
asp.net中oracle 存储过程(图文)
2015/08/12 Javascript
JS实现适合于后台使用的动画折叠菜单效果
2015/09/21 Javascript
js根据手机客户端浏览器类型,判断跳转官网/手机网站多个实例代码
2016/04/30 Javascript
bootstrap实现点击删除按钮弹出确认框的实例代码
2018/08/16 Javascript
Vue实现底部侧边工具栏的实例代码
2018/09/03 Javascript
详谈Vue.js框架下main.js,App.vue,page/index.vue之间的区别
2020/08/12 Javascript
Python实现批量读取word中表格信息的方法
2015/07/30 Python
使用Python将数组的元素导出到变量中(unpacking)
2016/10/27 Python
python使用matplotlib绘图时图例显示问题的解决
2017/04/27 Python
python脚本作为Windows服务启动代码详解
2018/02/11 Python
Python 共享变量加锁、释放详解
2019/08/28 Python
基于Python实现剪切板实时监控方法解析
2019/09/11 Python
完美解决Django2.0中models下的ForeignKey()问题
2020/05/19 Python
Python用dilb提取照片上人脸的示例
2020/10/26 Python
python dir函数快速掌握用法技巧
2020/12/09 Python
可以随进度显示不同颜色的css3进度条分享
2014/04/11 HTML / CSS
使用html2canvas实现浏览器截图的示例代码
2018/01/26 HTML / CSS
软件工程专业推荐信
2013/10/28 职场文书
行政管理专业推荐信
2013/11/02 职场文书
带薪年假请假条
2014/02/04 职场文书
幼儿园六一亲子活动方案
2014/08/26 职场文书
党员电教片《信仰》心得体会
2016/01/15 职场文书
六年级语文教学反思
2016/03/03 职场文书
幼儿园2016圣诞节活动总结
2016/03/31 职场文书
LayUI+Shiro实现动态菜单并记住菜单收展的示例
2021/05/06 Javascript
利用Selenium添加cookie实现自动登录的示例代码(fofa)
2021/05/08 Python