如何在deactivate()挂钩上使用<keep-alive>删除缓存?

时间:2019-08-30 13:21:52

标签: javascript vue.js vue-component vue-router keep-alive

我正在使用<keep-alive>来缓存我的组件,但是在某些情况下,我想删除它。我可以在deactivate()钩子上做到吗?

案例:我有一个组成部分,还有你的子组成部分(孩子)。

  • 用户转到 PageA
  • 用户转到 sub-PageA-1
  • sub-PageA-1 中,用户转到 sub-PageA-2
  • 当用户在子页面之间浏览时,我想要保留缓存,但是当用户关闭子页面时,我想要清除缓存。

我正在寻找一种实现方法,我现在尝试的一个选项是使用钩子deactivated(),但这给我带来了两个问题:

    当我使用deactivated()返回首页时,不会调用
  1. this.$router.push({ params: { componentName: undefined } })
  2. 我不知道如何实现清理缓存的方法。

0 个答案:

没有答案