前言
很久没有更新了,今天这个题目更多的可能是一点灵感,在最近项目中有一个刷新当前页面需求,但通过思考也并不是刷新当前页面,这样做固然简单,但对于用户体验并不是很完美,其实只需要刷新当前路由组件,而页面中整体框架不需要重新渲染,所以就考虑有没有办法只重新加载某一个组件,这样用户只会看到数据或某一块的刷新,有点像ajax的方式进行局部刷新,会提高一下用户体验;
正文
vue项目刷新当前页面,可能这已经不是个问题,目前大家知道的有应该最少有两种解决方案:
1 | localhost.reload() |
如上是在遇到刷新时最直接能想到的方法,但是这个方法有个弊端就是刷新页面会导致空白页面的出现,这样的用户体验很不好;
1 | <div id="app"> |
然后在需要当前页面刷新的页面中注入App.vue组件提供(provide)的 reload 依赖,然后直接用this.reload来调用就行
1 | export default { |
在众多刷新的方法里这个方法目前是个人觉得体验最好的一种,当然可能还有其他的方式,但目前我还没有想到到,欢迎交流!!