
(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 来控制
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)