keep-alive
路由每切换一次,当页的ajax请求就会重新发送一次,这时可以使用
vue自带的keep-alive。
它的作用是能将加载过的路由放到内存之中,写一次加载时就不许需
要进行重新渲染。
用法:
App.vue
<template>
<div id="app">
<keep-alive>
<router-view/>
</keep-alive>
</div>
</template>
<script>
export default {
name: 'App'
}
</script>
<style>
</style>
使用keep-active时会有个问题
比如当应用需要根据用户选择的城市来改变页面推荐的旅游景区时,
使用keep-active会导致用户第二次切换城市后不会更新对应的景区。
这时,我们需要在相关组件中加上一个生命周期函数 ——activated ()
每次切换页面/路由的时候,都会调用这个生命周期函数。
所以可以将axios请求写在里面,就解决了keep-alive的问题!