keep-aliv能够帮助我们实现页面ajax请求只被请求一次,在你跳转页面的时候,也不会被请求多次,可是比如在旅游页面中,当我们在城市选择页面重新选择城市,这个时候就需要重新发送一个ajax请求,来显示对应城市的推荐内容
解决方法1:
使keep-alive新增的一个生命周期函数activated(实际上还有一个对应的deactivated函数),这个函数和mounted相比,mounted只执行一次,activated在每一次页面跳转的时候都会执行
所以可以设置一个缓冲变量,判断当比如旅游城市选择页面中的城市发生变化时,重新请求ajax
解决方法2:
在keep-alive标签中,对每次都需要重新请求的页面或者组件做特殊处理
在使用这种方法后,由于你对Detail页面做了特殊处理,所以Detail页面中的activated和deactivated函数是不会执行的,因此,如果你使用了activated和deactivated函数,请更换成beforeMount和beforeDestroy