Vue 路由缓存 防止路由切换数据丢失 路由的生命周期

在切换路由的时候,如果写好了一丢数据在去切换路由在回到写好的数据的路由去将会丢失,这时可以使用路由缓存技术进行保存,这样两个界面来回换数据也不会丢失

在 < router-view >展示的内容都不会被销毁,路由来回切换数据也不会丢失,但是这样写使用在 < router-view >展示的路由都会被缓存

html 复制代码
  <keep-alive>
        <router-view></router-view>
        <!-- 路由器占位符 -->
   </keep-alive>

指定缓存的组件

javascript 复制代码
//User组件
<script>
    export default ({
        name: 'User',      
    })
</script>
html 复制代码
<!--include的User是组件名-->
   <keep-alive include="User">
        <router-view></router-view>
        <!-- 路由器占位符 -->
      </keep-alive>

这种方式只能设置一个或全部缓存 如果想指定两个需要这样操作

javascript 复制代码
 :include="['User','Login']"

路由生命周期

javascript 复制代码
activated(){
//路由被激活时


},
deactivated(){
//路由被切换走时

}

这两个是路由专有的生命周期,如果组件被缓存,是不会调用created和销毁函数的,这时候可以使用这两个函数

相关推荐
加个鸡腿儿7 分钟前
从"包裹器"到"确认按钮"——一个组件的三次重构
前端·vue.js·设计模式
可观测性用观测云16 分钟前
SpringBootAI 接入观测云 MCP 最佳实践
spring boot
BUG胡汉三21 分钟前
自建在线文档编辑服务:基于 Collabora CODE + Spring Boot + Vue 3 的完整实现
vue.js·spring boot·后端·在线编辑
终端鹿37 分钟前
Vue3 核心 API 补充解析:toRef / toRefs / unref / isRef
前端·javascript·vue.js
英俊潇洒美少年39 分钟前
vue的事件循环
前端·javascript·vue.js
gechunlian881 小时前
Redis简介、常用命令及优化
数据库·redis·缓存
荒古前2 小时前
Spring Boot + MyBatis 启动报错:不允许有匹配 “[xX][mM][lL]“ 的处理指令目标
spring boot·后端·mybatis
mldlds2 小时前
Spring Boot 实战:轻松实现文件上传与下载功能
java·数据库·spring boot
蜡台2 小时前
Vue 中多项目的组件共用方案
前端·javascript·vue.js·git
xxjj998a2 小时前
Spring Boot 整合 Apollo 配置中心实战
java·spring boot·后端