vue 刷新页面的三种方法

vue 刷新页面的三种方法,第1张

相当于按ctrl+F5 强制刷新那种,整个页面重新加载,会出现一个瞬间的空白页面,体验不好

(1)新建一个空白页面 reload.vue:

(2)需要刷新的页面,先跳转到reload.vue,再跳转回原页面,从而实现刷新(路径上带param的不能用):

(1)App.vue添加provide,和data一样,返回一个对象:

(2)需要刷新的页面内注入inject依赖:

页面空白我遇到的就如下几种情况

1.路由异常,

一般是next()函数没有被执行

不执行的原因就是在 beforeEach 里

a.if判断的某个分支让它没有走next()

b.某个异常跳出导致没有执行

c.网络请求 只处理了then的情况,没有处理catch情况

2.html渲染报错,常见的就是key相同了

3.js解析报错,常见的es6语法在某些手机里不支持,特别是对象扩展符(...),promise的finally不支持等等。

4.网络请求异常导致的, 特别是 跨域请求异常 导致的,经常出现这个情况

1、最直接整个页面重新刷新

location. reload()

this.$router.go(0)

这两种都可以刷新当前页面的,缺点就是相当于按ctrl+F5 强制刷新那种,整个页面重新加载,会出现一个瞬间的空白页面,体验不好。

2、新建一个空白页面

新建一个空白页面supplierAllBack.vue,点击确定的时候先跳转到这个空白页,然后再立马跳转回来。

provide / inject 组合

这是我试过最实用的,下面用项目截图给大家说明下:首先,要修改下你的app.vue

通过声明reload方法,控制router-view的显示或隐藏,从而控制页面的再次加载,这边定义了

isRouterAlive //true or false 来控制


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11673050.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存