vue的路由返回上一层页面刷新或者不刷新的讲解

7,340 阅读1分钟

首先说常规的路由返回上一层的处理

// 普遍都是用这俩种
this.$router.back();
this.$router.go();
// 都支持传参一个数字  back() 等价于 go(-1)
// go还有go(0)刷新,go(-1)前进

一般来说,在vue中,你不使用keep-alive默认返回都是刷新的

而需要不刷新这需要使用keep-alive,一般都是在app.vue文件去使用全局

<keep-alive>  
    <router-view v-if="$route.meta.keepAlive" />  // 不做刷新的跳转
</keep-alive>
<router-view v-if="!$route.meta.keepAlive" />   // 刷新的跳转

这里使用到的$route.meta.keepAlive是需要在路由配置的,从而刷新与否