目录

一、问题

二、手动刷新当前页面

1.方法一:v-if  router-view

2.方法二:更改 router-view的 key值

三、总结


一、问题

有时候需要手动刷新整个页面。比如一个页面右侧有一个患者切换的菜单,切换完患者后,要重新调用接口,才能让当前的页面中的数据与患者对应。

对于这种情况有两种解决方法:

1.方法一:切换完患者后,直接重新调用接口;

缺点:1)只能刷新页面中调用接口的数据,如果接口过多,会出现代码冗余问题

2)没有调用接口的部分需要单独处理,例如使用时间选择组件时,如果需要默认当前时间,还需要手动更改 value;子组件内部有接口时,还需要添加v-if处理或者 使用ref引用子组件调用子组件内部的接口。

2.方法二:手动刷新,刷新整个页面。-----如何实现?

二、手动刷新当前页面

1.方法一:v-if  router-view

<template><router-view v-if="isShow" ></router-view>
</template>
<script>
import { defineComponent, provide, ref} from 'vue';export default defineComponent({provide(){return{reload:this.reload};},setup() {//是否显示const isShow=ref(true);return{isShow,}},methods:{reload(){//  1.方法一:v-if 刷新 router-viewthis.isShow=false;this.$nextTick(()=>{this.isShow=true;})}}
});
</script>
<style lang="scss" scoped>
</style>

2.方法二:更改 router-view的 key值

<template><router-view :key="componentKey"></router-view>
</template>
<script>
import { defineComponent, provide, ref} from 'vue';export default defineComponent({provide(){return{reload:this.reload};},setup() {//是否显示const componentKey=ref('')return{componentKey}},methods:{reload(){// 2.方法二:更改 router-view的key值this.componentKey=new Date().getTime()}}
});
</script>
<style lang="scss" scoped>
</style>

三、总结

1.刷新整个页面的方法:

在router-view中:方法reload

1)v-if

2) 组件添加一个key值,更改key的值

在需要刷新的页面接收inject("reload",reload")并在需要刷新页面时调用  reload方法。

/*

希望对你有帮助!

如有错误,欢迎指正,非常感谢

*/

vue 刷新当前页面的方式相关推荐

  1. vue刷新当前页面的方法

    第一个想到的方法是this.$router.push() , 但是会报错 , 不让自己页面跳转自己页面 , 就算解决了这个问题跳转了之后 , dom也不会渲染 , 页面的数据显示不出来 , 所以查询了 ...

  2. JS中刷新当前页面的方式

    1.window.location.href="url": 当前页面打开URL页面,改变url地址,如果URL为空则重新打开当前页面. (1)与self.location.href ...

  3. vue项目刷新当前页面的三种方法

    本文介绍了vue项目刷新当前页面的三种方法,本文图文并茂给大家介绍的非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下. 想必大家在刨坑vue的时候也遇到过下面情形:比如在删除或者增加一条记录的时 ...

  4. Vue项目实战02 : vue项目刷新当前页面的三种方法

    想必大家在刨坑vue的时候也遇到过下面情形:比如在删除或者增加一条记录的时候希望当前页面可以重新刷新或者如下面这种: 这时候我们最直接的思维就是想到下面这种: 但是,试过的会发现用vue-router ...

  5. vue的html自动刷新,vue项目刷新当前页面的方法

    想必大家在刨坑vue的时候也遇到过下面情形:比如在删除或者增加一条记录的时候希望当前页面可以重新刷新或者如下面这种: 如果希望点击确定的时候,Dialog 对话框关闭的时候,当前http://loca ...

  6. Vue项目中刷新当前页面的四种方法

    Vue项目中刷新当前页面的四种方法 前记 刷新当前页面的四种方法 this.$router.go(0) location.reload() 跳转空白页再跳回原页面 使用provide / inject ...

  7. js 刷新当前页面的方法 reload() , replace()的简单使用

    本文为大家介绍三种 js 刷新当前页面的方法,我是在vue实例下写的: 添加定时器是为了直观看到刷新效果(每次刷新都会重置为0): reload() 方法; replace() 方法; 页面自动刷新; ...

  8. html如何只刷新页面指定,js控制页面刷新 JS刷新当前页面的几种方法总结

    JavaScript location.reload() 方法 Location 对象的 reload() 方法用于重新加载当前文档(页面),语法如下: location.reload( false| ...

  9. 前端刷新当前页面的方法总结

    最近在做编辑的时候遇到这样的问题:修改完数据之后需要刷新页面获取最新数据 前端刷新当前页面的方法总结: 1.this.$router.go(0) 2.location.reload() 以上两种刷新页 ...

最新文章

  1. GPT-3:人工智能的新突破
  2. 基于SSM实现公交路线管理系统
  3. 【MM模块】 Goods Receipt 收货 1
  4. 为什么我的论文没人引用?
  5. WebServices应用集成框架ESB(Enterprise Service Bus 企业服务总线)
  6. 【洛谷 P2051】 [AHOI2009]中国象棋(DP)
  7. 64. Minimum Path Sum
  8. 物理设计-数据类型的选择
  9. 1039 Course List for Student (25 分)_33行代码AC
  10. 前端学习(2983):一文理解数据劫持1
  11. 前端学习(1849)vue之电商管理系统电商系统前端项目初始化
  12. Python 数据分析三剑客之 NumPy(一):理解 NumPy / 数组基础
  13. slider获取点击 unity_Unity基础 | 70分钟带你轻松入门
  14. 组件价格跳水,光伏产品面临量价齐跌
  15. python求解next数组实现KMP算法
  16. bp神经网络预测未来数据,bp神经网络如何预测
  17. 智慧运维:基于 BIM 技术的可视化管理系统
  18. ubuntu20.04屏幕亮度无法调节(亮度条调节无效)的简单靠谱解决方案及踩坑历程
  19. wxpython 优秀的界面_WxPython实现无边框界面
  20. QtAV的编译与使用(MSVC2015+Qt5.9.8)

热门文章

  1. 第8课:彻底实战详解使用IDE开发Spark程序--集群模式运行
  2. 软件构造课程作业最终版帮助文档
  3. DLNA 共享多媒体电脑到电视(Win11)
  4. Android调用系统拍摄视频
  5. html5通话记录,中国移动手机通话记录怎么查 苹果手机的通话记录怎么查
  6. lg g pro 2android,LG G Pro 2怎么样?LG G Pro 2配置
  7. matlab中图显示单元格,excel如何根据表格中的数据自动在单元格中画图:
  8. Vue打包后浏览器不出来
  9. 【深度学习】优化算法-Ftrl
  10. geotrust与comodo性能及价格对照