尝试了vue-router重新路由到当前页面但页面并没有进行刷新、用window.reload()、router.go(0)刷新,浏览器重新加载了,体验不好
于是百度到声明reload方法,控制router-view的显示、隐藏
首先在App.vue里声明reload()方法
<template>
<div id="app">
<router-view v-if="isRouterAlive"></router-view>
</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>
然后在需要的页面注入App.vue组件提供(provide)的 reload 依赖,直接this.reload()进行调用
<script>
export default {
name: 'businessApplication',
inject:['reload'],
data(){
return{