有时候在页面里做了某些操作以后,需要页面刷新一下来重新获取数据。试了几种方法,觉得下面的方法比较实用:
1、location.reload()
优点:代码简单
缺点:会造成页面空白,体验不好
2、this.$router.go(0)
这种方法页面会一瞬间的白屏,体验不是很好,虽然只是一行代码的事
3、控制<router-view>的显示隐藏
默认<router-view v-if="isRouterAlive" />isRouterAlive肯定是true,在需要刷新的时候把这个值设为false,接着再重新设为true:
provide / inject 组合 方式是我试过最实用的,下面用项目截图给大家说明下:首先,要修改下你的app.vue
app.vue代码
项目中的文件代码
至此,3种方式介绍完了,欢迎学习~