关于keep-alive用在某个组件上的使用方法

关于keep-alive用在某个组件上的使用方法

!!!注意注意,这是在某个单一组件上使用keep-alive,不是在某个路由中,其实仅仅是把那个组件用keep-alive包起来就好了,下图是代码:

	<keep-alive>
      <homeContainer></homeContainer>//这里是我自定义的一个组件,里面是我用jQuery写的侧边栏的hover效果
    </keep-alive>

由于jQuery在vue中只能加载一次,当我第一次打开页面时,如图,不会出现任何问题,我主要用jQuery写的是轮播图的侧边栏部分:
在这里插入图片描述
当我点击其他商品,然后返回主页,或者是从其他路由返回到主页面的路由的时候,就会出现下图的样子:
在这里插入图片描述
这种状态会一直保持,因为我使用jQuery中的show和hide写的,就像下面这个样子:

			$('.submeal-one').hide();
            $('.hoverSubmeal-one').hover(function () {
                $('.submeal-one').show();
            }, function () {
                $('.submeal-one').hide();
            });

出现这种问题的原因就是由于jQuery在vue路由中只能加载一次,所以说我就用了keep-alive的方法可以让他不会被销毁,但是如果用在整个页面,会导致整个页面的缓存都一直存在,所以说最好的方法就是把轮播图部分写成一个组件,然后单独用在那个组件上面,这样就可以解决这个问题了

如果我对于这个问题描述的有什么问题的话,还希望各位大佬在评论区指出,相互学习,谢谢啦

对了对了,这里附上另外一篇文章的地址,他这个讲解了keep-alive的使用方法,大家可以顺便去看看

vue-router 实现组件的缓存之 keep-alive

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值