vue小记——保持历史页面数据不变,实现返回后不重置数据

在Vue 2中,如果希望在用户导航到其他页面后再返回时保持历史页面的数据不变,可以使用<keep-alive>组件来实现

以下是如何使用<keep-alive>来保持历史页面数据不变的方法:

  1. 在路由视图组件外包裹<keep-alive>
html 复制代码
<template>
  <div id="app">
    <keep-alive>
      <router-view></router-view>
    </keep-alive>
  </div>
</template>

这样,所有通过<router-view>渲染的组件都会被<keep-alive>缓存,除非它们被<transition><router-view>v-if/v-else等条件语句包裹。

  1. 使用includeexclude属性来精细控制缓存

如果您只想缓存特定的组件,可以使用includeexclude属性来指定哪些组件应该被缓存。

html 复制代码
<keep-alive include="Home,About">
  <router-view></router-view>
</keep-alive>

或者:

html 复制代码
<keep-alive exclude="Detail">
  <router-view></router-view>
</keep-alive>
相关推荐
焰火199915 分钟前
[Vue]可重置的响应式状态reactive
前端·vue.js
源码宝18 分钟前
基于 SpringBoot + Vue 的医院随访系统:技术架构与功能实现
java·vue.js·spring boot·架构·源码·随访系统·随访管理
老王以为25 分钟前
为什么 React 和 Vue 不一样?
前端·vue.js·react.js
web打印社区27 分钟前
2026最新Web静默打印解决方案,无插件无预览,完美替代Lodop
前端·javascript·vue.js·electron·pdf
Forever7_2 小时前
Vue 全局监控用户行为,最强方案!
vue.js
薯老板4 小时前
vue组件之间的通信
前端·vue.js
光影少年5 小时前
前端SSR和ssg区别
前端·vue.js·人工智能·学习·react.js
吴声子夜歌7 小时前
Vue3——UI组件库Element Plus(一)
vue.js·ui·elementplus
涵涵(互关)7 小时前
语法大全-only-writer-two
前端·vue.js·typescript
李白的天不白8 小时前
如何项目发布到github上
android·vue.js