keepalive是Vue内置的一个组件,可以使被包含的组件保留状态,或避免重新渲染。提高性能
创建一个created()和destroyed()来测试,会发现只打印home created 不会执行销毁。
<keep-alive>
<router-view></router-view>
</keep-alive>
created() {
console.log("home created");
this.$router.push('/home/news');
},
destroyed() {
console.log("home destroyed");
},
router-view也是组件,如果直接被包在keep-alive里面,所有路径匹配的试图组件都会被缓存。