当前位置: 首页 > news >正文

Vue中keep-alive结合router实现部分页面缓存

实践部分:

我的这个page页面如果选中了,然后跳转到别的页面再回来发现选中的内容消失。

我希望实现出去之后跳转回来内容还在。

原来我的项目里有两处router-view

我没有成功设置好组件的缓存

6.29 希望以后有时间能够完善一下吧。

详解vue组件的keep-alive_你永远在 this.$parent 中找不到 keep-alive-CSDN博客

Vue 生命周期总结

1. 有哪些生命周期

系统自带的生命周期:

  • beforeCreate

  • created

  • beforeMount

  • mounted

  • beforeUpdate

  • updated

  • beforeDestroy 可以清理一下定时器

  • destroyed

2. 进入页面或组件时,执行的生命周期顺序
  1. beforeCreate

  2. created

  3. beforeMount

  4. mounted

3. $el$data 在各阶段的情况
 created` 阶段已有 `$data`,`mounted` 阶段才有 `$el
  • beforeCreate:既没有 $el,也没有 $data

  • created:有 $data,但没有 $el

  • beforeMount:有 $data,但没有 $el

  • mounted:既有 $data,也有 $el

$el表示DOM元素

$data表示数据 方法的状态和数据保持一致 如果$data有了,那么方法也可以调用了

4. 使用 keep-alive 时新增的生命周期
  • activated(组件激活时触发)

  • deactivated(组件失活时触发)

5. 第一次进入 keep-alive 缓存的组件时,执行的生命周期
  1. beforeCreate

  2. created

  3. beforeMount

  4. mounted

  5. activated

6. 第二次或第 N 次进入 keep-alive 缓存的组件时,执行的生命周期

仅执行 activated

(^▽^)针对这些特性:

https://juejin.cn/post/7342337684646051879

关于 keep-alive 的一些最佳实践:

  • 将只执行一次的事件挂载方法都放到 mounted

  • 将组件每次进入时需要执行的方法放在 activated

keep-alive 可以接收 3 个属性做为参数,用于匹配相应的组件进行缓存:

keep-alive参数:

  • exclude 要排除的组件(以为字符串,数组,以及正则表达式,任何匹配的组件都不会被缓存)

  • include 要缓存的组件(可以是字符串、数组或正则表达式,任何匹配的组件都不会被缓存)

  • max 缓存组件的最大值(类型为字符或数字,可以控制缓存组件的个数)

注意:当使用正则表达式或数组时,务必使用 v-bind(就是冒号开头的属性)

exclude、include 同时存在时,exclude 优先级更高

http://www.lryc.cn/news/577082.html

相关文章:

  • 【NLP 实战】蒙古语情感分析:从 CNN 架构设计到模型训练的全流程解析(内附项目源码及模型成果)
  • 【Flask开发】嘿马文学web完整flask项目第2篇:2.用户认证,Json Web Token(JWT)【附代码文档】
  • Nginx漏洞处理指南
  • python pyecharts 数据分析及可视化(2)
  • Prompt工程标准化在多模型协同中的作用
  • swift-19-从OC到Swift、函数式编程
  • 设计模式 | 过滤器模式
  • MySQL之全场景常用工具链
  • MyBatis批量删除
  • 【系统分析师】2021年真题:案例分析-答案及详解
  • CppCon 2017 学习:Type Punning in C++17 Avoiding Pun-defined Behavior
  • 【硬核数学】2.4 驯服“梯度下降”:深度学习中的优化艺术与正则化技巧《从零构建机器学习、深度学习到LLM的数学认知》
  • Python爬虫:Requests与Beautiful Soup库详解
  • ISP Pipeline(9):Noise Filter for Chroma 色度去噪
  • node js入门,包含express,npm管理
  • 用户行为序列建模(篇八)-【阿里】DIEN
  • ROS常用的路径规划算法介绍
  • 在Linux系统中部署Java项目
  • 爪形行列式
  • 图书管理系统练习项目源码-前后端分离-使用node.js来做后端开发
  • Linux中ssh无法使用配置的环境变量,ssh(非登录环境)环境变量和登录环境变量不同步问题
  • python中多线程:线程插队方法join详解、线程停止、通过变量来让线程停止
  • 电子计数跳绳原型
  • StarRocks 3.5 新特性解读:Snapshot 快照恢复、大导入性能全面升级、分区管理更智能
  • 左神算法之螺旋打印
  • vue使用Element Plus UI框架
  • Modbus 报文结构与 CRC 校验实战指南(一)
  • 设计模式(五)
  • Java面试宝典:基础五
  • pyhton基础【18】面向对象基础一