详解vue几种主动刷新的方法总结


Posted in Javascript onFebruary 19, 2019

当我们在做项目时,我们需要做当前页面的刷新来达到数据更新的目的,在此我们大概总结了几种常用的页面刷新的方法。

1.window.location.reload(),是原生JS提供的方法,this.$router.go(0):是vue路由里面的一种方法,这两种方法都可以达到页面刷新的目的,简单粗暴,但是用户体验不好,相当于按F5刷新页面,会有短暂的白屏,相当于页面的重新载入。

2.通过路由跳转的方法刷新,具体思路是点击按钮跳转一个空白页,然后再马上跳回来:

当前页面:

<template>
 <div>
 <el-button type="primary" class="btn" @click="btnaction">摁我刷新页面</el-button>
 </div>
</template>
<script>
 export default{
 data(){
  return{
  }
 },
 mounted(){
 },
 methods:{
  btnaction() {
//  location.reload()
//       this.$router.go(0)
        this.$router.replace({
         path:'/empty',
         name:'empty'
        })
  }
 }
 }
</script>

空白页面:

<template>
 <h1>
 空页面
 </h1>
</template>
 
<script>
 export default{
 data() {
  return{
  
  }
 },
 created(){
  this.$router.replace({
         path:'/',
         name:'father'
        })
 }
 }
</script>

当点击按钮时地址栏会有快速的地址切换过程。

3.控制<router-view></router-view>的显示与否,在全局组件注册一个方法,该方法控制router-view的显示与否,在子组件调用即可:

APP.vue

<template>
 <div id="app">
  <router-view v-if="isRouterAlive"></router-view>
 </div>
</template>
 
<script>
export default {
 name: 'App',
 provide() { // 注册一个方法
  return {
   reload: this.reload
  }
 },
 data() {
  return {
   isRouterAlive: true
  }
 },
 methods: {
  reload() {
   this.isRouterAlive = false
   this.$nextTick(function() {
    this.isRouterAlive = true
    console.log('reload')
   })
  }
 }
}
</script>

当前组件:

<template>
 <div>
 <el-button type="primary" class="btn" @click="btnaction">摁我刷新页面</el-button>
 </div>
</template>
 
<script>
 export default{
 inject: ['reload'], // 引入方法
 data(){
  return{
  }
 },
 components:{
 },
 mounted(){
 },
 methods:{
  btnaction() {
//  location.reload()
//       this.$router.go(0)
//       this.$router.replace({
//        path:'/empty',
//        name:'empty'
//       })
        this.reload() // 调用方法
  }
 }
 }
</script>

当点击按钮时所有页面重新渲染。

4.对列表操作后的表格刷新的操作方法:

当我们在操作数据表格时,会对表格进行增删改查,做完操作我们需要对列表进行刷新来达到重新渲染,但是当如果存在分页,我们在比如第3页进行删除操作,如果按照以往的刷新方法,刷新完后便进入了第一页,这肯定不是我们想要的,这时候我们常用的做法是重新调用数据渲染方法,通常我们会有获取数据接口,删除接口等等,页面加载时调用获取数据的方法,当我们执行删除操作时,再重新调用获取数据的方法即可。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
一些有关检查数据的JS代码
Sep 07 Javascript
读JavaScript DOM编程艺术笔记
Nov 15 Javascript
js快速排序的实现代码
Dec 08 Javascript
js 左右悬浮对联广告代码示例
Dec 12 Javascript
Js为表单动态添加节点内容的方法
Feb 10 Javascript
jquery获取复选框的值的简单实例
May 26 Javascript
Vue.js移动端左滑删除组件的实现代码
Sep 08 Javascript
ES6 javascript中Class类继承用法实例详解
Oct 30 Javascript
BootStrap TreeView使用实例详解
Nov 01 Javascript
Nuxt.js实现校验访问浏览器类型的中间件
Aug 24 Javascript
JavaScript实现秒杀时钟倒计时
Sep 29 Javascript
ant design pro中可控的筛选和排序实例
Nov 17 Javascript
jQuery事件多次绑定与解绑问题实例分析
Feb 19 #jQuery
Vue动态路由缓存不相互影响的解决办法
Feb 19 #Javascript
JS实现的全选、全不选及反选功能【案例】
Feb 19 #Javascript
JS/jQuery实现简单的开关灯效果【案例】
Feb 19 #jQuery
Vue结合后台导入导出Excel问题详解
Feb 19 #Javascript
Vue.js实现可排序的表格组件功能示例
Feb 19 #Javascript
Angular7创建项目、组件、服务以及服务的使用
Feb 19 #Javascript
You might like
用 Composer构建自己的 PHP 框架之设计 MVC
2014/10/30 PHP
php的GD库imagettftext函数解决中文乱码问题
2015/01/24 PHP
Nginx服务器上安装并配置PHPMyAdmin的教程
2015/08/18 PHP
php使用APC实现实时上传进度条功能
2015/10/26 PHP
php组合排序简单实现方法
2016/10/15 PHP
gearman管理工具GearmanManager的安装与php使用方法示例
2020/02/27 PHP
JS字符串累加Array不一定比字符串累加快(根据电脑配置)
2012/05/14 Javascript
js中cookie的添加、取值、删除示例代码
2013/10/21 Javascript
JavaScript中最简洁的编码html字符串的方法
2014/10/11 Javascript
jQuery的图片滑块焦点图插件整理推荐
2014/12/07 Javascript
如何使用jQuery技术开发ios风格的页面导航菜单
2015/07/29 Javascript
jQuery实现点击按钮弹出可关闭层的浮动层插件
2015/09/19 Javascript
以Python代码实例展示kNN算法的实际运用
2015/10/26 Javascript
前端微信支付js代码
2016/07/25 Javascript
JavaScript基本类型值-Undefined、Null、Boolean
2017/02/23 Javascript
JS/HTML5游戏常用算法之碰撞检测 包围盒检测算法详解【矩形情况】
2018/12/13 Javascript
使用vue重构资讯页面的实例代码解析
2019/11/26 Javascript
详解JavaScript修改注册表的方法
2020/01/05 Javascript
python显示天气预报
2014/03/02 Python
在Windows服务器下用Apache和mod_wsgi配置Python应用的教程
2015/05/06 Python
Python环境变量设置方法
2016/08/28 Python
django rest framework之请求与响应(详解)
2017/11/06 Python
Python内置函数reversed()用法分析
2018/03/20 Python
python下PyGame的下载与安装过程及遇到问题
2019/08/04 Python
python文字和unicode/ascll相互转换函数及简单加密解密实现代码
2019/08/12 Python
python如何使用jt400.jar包代码实例
2019/12/20 Python
基于python实现删除指定文件类型
2020/07/21 Python
详解Python高阶函数
2020/08/15 Python
基于python模拟bfs和dfs代码实例
2020/11/19 Python
python 求两个向量的顺时针夹角操作
2021/03/04 Python
英国在线汽车和面包车零件商店:Car Parts 4 Less
2018/08/15 全球购物
希腊香水和化妆品购物网站:Parfimo.gr
2019/10/03 全球购物
外企财务年会演讲稿
2014/01/03 职场文书
政府采购方案
2014/06/12 职场文书
优秀共产党员事迹材料2016
2016/02/29 职场文书
详解python网络进程
2021/06/15 Python