思路:强制刷新页面即可完成页面的跳转。
问题:常规的location.reload()或者this.$router.push(0)体验很差,整个页面都会刷新,且会有短暂时间的白屏。
解决:在app.vue文件中写reload方法,只刷新组件,在要刷新页面的地方进行调用
代码:
1.app.vue
<template>
<div id="app">
<router-view v-if="isRouterAlive"/>
</div>
</template>
<script>
export default {
name: 'App',
provide(){
return{
reload:this.reload
}
},
data(){
return{
isRouterAlive:true
}
},
methods:{
reload(){
this.isRouterAlive = false;
this.$nextTick(function(){
this.isRouterAlive=true
})
}
}
}
</script>
2.在刷新页面的地方进行调用
首先要在页面中注入reload方法
之后进行调用即可
版权声明:本文为lmj0920原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。