背景
碰到个需求,需要在当前页面点击确定创建后,重新进入该页面,以重新创建。发现单纯的使用this.$touter.push() push到当前路由页面不会刷新。
解决方案
新建refresh.vue文件如下:
<template>
<div></div>
</template>
<script>
/*
* 该页面为了实现路由跳转当前页面,从需要刷新的页面进入该页面再返回之前页面,实现刷新当前页面的效果
* */
export default {
name: 'refresh',
beforeRouteEnter(to, from, next) {
next((vm) => {
vm.$router.replace({
path: from.path, query: from.query
});
});
}
};
</script>
<style scoped>
</style>
为该文件配置路由如下:
const Refresh = {
path: '/refresh',
name: 'refresh',
mode: 'history',
component: resolve => require(['@/views/refresh.vue'], resolve),
};
使用的时候,只要push到fresh页面就可以了。如下:
this.$router.push({ name: 'refresh' })