一、常规方法

location.reload();
this.$rotuer.go(0);

存在问题:

1.强制刷新页面,出现短暂的空白闪烁。

2.h5页面在安卓机方法不兼容。

  • this.$rotuer.go(0) 安卓、ios都不支持、pc支持
  • location.reload() 安卓不支持 、 ios支持、pc支持

二、provide和inject实现页面刷新

祖先组件向其所有子孙后代注入一个依赖,不论组件层次有多深,并在起上下游关系成立的时间里始终生效。

1、在 App.vue 文件里写入 provide 的方法

<template><div id="app"><keep-alive> <router-view v-if="isRouterAlive"></router-view></keep-alive></div>
</template><script>
export default {name: 'App',provide () {  // 在祖先组件中通过 provide 提供变量return {reload: this.reload  //  声明一个变量}},data () {return {isRouterAlive: true  // 控制 router-view 是否显示达到刷新效果}},methods: {// provide中声明的变量reload () {// 通过 this.isRouterAlive 控制 router-view 达到刷新效果this.isRouterAlive = false this.$nextTick(function () {this.isRouterAlive = true})}}
}</script>

2、子孙组件中 inject 引用声明的变量

<template>
<div class="page"><button @click="reloadFun">刷新</button>
</div>
</template><script>
import Vue from 'vue';export default {inject:['reload'], // 使用 inject 注入 reload 变量 data(){return{}},methods: {reloadFun(){this.reload();  // 直接使用}},mounted() {}}
</script>

Vue 强制页面刷新(provide 和 inject)相关推荐

  1. nignx部署Vue单页面刷新路由404问题解决

    nignx部署Vue单页面刷新路由404问题解决 参考文章: (1)nignx部署Vue单页面刷新路由404问题解决 (2)https://www.cnblogs.com/wuchenggong/p/ ...

  2. [vue] 说说你对provide和inject的理解

    [vue] 说说你对provide和inject的理解 通过在父组件中inject一些数据然后再所有子组件中都可以通过provide获取使用该参数,主要是为了解决一些循环组件比如tree, menu, ...

  3. vue.js页面刷新出现闪烁问题的解决

    vue.js页面刷新出现闪烁问题的解决 参考文章: (1)vue.js页面刷新出现闪烁问题的解决 (2)https://www.cnblogs.com/wnsry/p/9132398.html 备忘一 ...

  4. vue实现页面刷新以及局部刷新的方法

    1.利用Vue里面的provide+inject组合,实现全页面刷新 通过在APP页面进行demo进行刷新,不会像前两种那样出现短暂的闪烁效果,提升用户体验,通常可以使用这种方式 (1)在APP页面中 ...

  5. vue组件深度传值provide、inject,值类型响应式的方法

    文章目录 前言 一.provide,inject是什么? 二.使用步骤 1.祖先组件provide注入,并且传入的是整个this指向 2.后代组件接收 总结 前言 最近封装了一个上传,下载,查看附件的 ...

  6. 小程序中强制页面刷新

    1.tab页面切换时强制页面数据刷新 // pageTabB => pageTabA wepy.switchTab({ url: '/pages/pageTabA',success(){let ...

  7. vue全局变量 页面刷新时数据丢失问题

    页面刷新后vue全局变量数据丢失 在开发中,我们需要将一些数据存到全局变量中,如用户的用户名等,便于页面展示,保存从服务器发送请求返回的数据,以避免在不同组件发送相同请求时,重复请求服务器. 方法一: ...

  8. vue所有页面刷新一次mounted(以及所有生命周期函数)执行两次的解决方法

    刚开始我发现页面每刷新一次,接口都请求两次,我以为是因为axios发送OPTIONS预检请求,但是我发现两次请求都是正常的get或者是post请求,并且只有在页面刷新的时候请求才触发两次,点击查询或者 ...

  9. vue关闭页面刷新页面清除缓存

    mounted() {this.enterPage()}, destroyed(){this.leavePage() }, methods: { /* 打开:load 关闭:beforeload+un ...

最新文章

  1. RStudio(You‘re using a non-UTF8 locale, therefore only ASCII characters will work)
  2. 软件测试部分练习题答案
  3. Win11如何跳过开机更新 Win11跳过开机更新教程
  4. mysql 与 xls 连接_数据库MySQL与xls文件的互导
  5. 1.3 编程基础之算术表达式与顺序执行 10 计算并联电阻的阻值
  6. 关于Linux平台视频采集程序的修改
  7. 硬盘分区表知识—详解硬盘MBR
  8. JDBC如何判断数据库的表是否存在
  9. surf算法matlab代码,surf算法matlab源码
  10. 日企抛等离子淘汰论 专家称其不敌中国企业
  11. 金融数据api接口记录(二)
  12. 黑平台Seener Tech Limtied在MT5上面搭建虚假交易 鼓动操作爆仓
  13. LC-3 子程序调用与模拟栈调用递归函数
  14. xv6操作系统中增加一个系统调用
  15. 基于snowfall的玫瑰花瓣飘落效果
  16. 雀巢“可持续发展列车”驶入瑞士驻华大使馆
  17. Oracle查询数据提示ORA-00942:表或视图不存在
  18. 哈希表(HashMap)的学习与实现
  19. java网页随机点名册_javascript网页随机点名实现过程解析
  20. mpv播放器键盘快捷键

热门文章

  1. 显示器连接mac后,屏幕不亮无信号输入问题
  2. 【华安php入门系列】--第2天-php的变量
  3. linux dns子域服务器,DNS主从复制及子域(三)
  4. js获取css值的方法:style、getComputedStyle和currentStyle
  5. currentStyle与getComputedStyle
  6. hisi perf uncore event介绍
  7. 杨彦兵博士|相机光通信简介
  8. 安卓开发04:OpenCV SDK下载及Android Java环境搭建
  9. pojo、entity、vo三种类的区别
  10. 地图格子 java_地图纠偏java算法