keep-alive vue-element-admin 简单操作 即可使用

官方文档说了关于路由里面的一个属性

noCache: true时不会缓存

说的是很容易理解 但是我始终没有效果 所以就按照传统写法重写了一遍

 meta: { title: 'xx', activeMenu: '/customer', keepAlive: true }

在路由meta里面加了个keepAlive: true

然后在App.vue中添加keep-alive标签

  <div id="app">
    {{$route.meta.keepAlive}}
    <keep-alive>
      <router-view v-if="$route.meta.keepAlive" />
    </keep-alive>
    <router-view v-if="$route.meta.keepAlive !== true" />
  </div>

然后到这里之后 还是不好使 百度了很多资料 找到了个有趣的文件

我们到AppMain.vue中 位置在layout里面

 <section class="app-main">
    <transition name="fade-transform" mode="out-in">
      <keep-alive v-if="cachedViews || alive === true">
        <router-view :key="key" />
      </keep-alive>
    </transition>
  </section>

稍微修改了一下

在computed加了个alive判断这个页面是否需要缓存

  alive() {
      return this.$route.meta.keepAlive
    },

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
keep-aliveVue.js 的一个内置组件,用于缓存组件。它可以在组件切换时将状态保留在内存中,以避免重复渲染和数据丢失。下面是一个使用 keep-alive 的例子: ```html <template> <div> <keep-alive> <router-view></router-view> </keep-alive> </div> </template> ``` 在这个例子中,我们将 <keep-alive> 标签包裹在 <router-view> 标签中,以便缓存路由组件。这样,当用户从一个路由切换到另一个路由时,如果两个路由都使用了 <keep-alive>,那么前一个路由的组件状态将被保留在内存中,以便在用户返回时快速恢复。 除了在路由中使用 keep-alive,我们还可以在其他组件中使用它来缓存动态组件或异步组件。例如: ```html <template> <div> <button @click="toggleComponent">Toggle Component</button> <keep-alive> <component :is="currentComponent"></component> </keep-alive> </div> </template> <script> export default { data() { return { currentComponent: 'ComponentA', components: { ComponentA: () => import('./ComponentA.vue'), ComponentB: () => import('./ComponentB.vue') } } }, methods: { toggleComponent() { this.currentComponent = this.currentComponent === 'ComponentA' ? 'ComponentB' : 'ComponentA' } } } </script> ``` 在这个例子中,我们使用 <component> 标签来动态渲染组件,并将其包裹在 <keep-alive> 标签中以便缓存。当用户点击按钮时,我们切换当前组件的类型,以便演示 keep-alive 的缓存效果。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值