VUE—用keep-alive进行缓存之后,返回到父级路由,再次进入时内容照样消失,怎么解决(图文)

本文介绍了解决Vue中使用keep-alive缓存组件内容,在返回父级路由后内容消失的问题。通过在组件中定义add()方法并利用localStorage存储和读取数据,确保即使在退出组件后再进入,内容依然保持不变。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用keep-alive进行缓存之后,返回到父级路由,再次进入时内容照样消失,怎么解决

在这里插入图片描述
本身创建了四个工作台,用了keep-alive所以可以缓存,同级路由下进行切换内容不会消失,比如我点击切换到了我的文档这个路由,然后再点击我的工作台,会发现内容没有消失,但是我点击首页,也就回到了父级路由,再次进入我的工作台会发现内容消失了
在这里插入图片描述
解决方法如下:
首先我在我的工作台这个vue里定义了一个方法add(),在点击增加worklist数组的对象同时在localstorage本地存储this.worklist,然后看一下localstorage的变化
在这里插入图片描述
我创建了8个工作台,然后localstorage里存入arr
在这里插入图片描述
然后在我的工作台这个vue里写一个钩子函数created

created () {
        this.worklist = this.$local.get('arr').arrlist
      }

让页面渲染完成之后就取出储存在localstorage里的arr,并把值给到this。worklist
这样页面v-for循环的worklist就能直接出现了
这样不管怎么退出都不会消失了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值