欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

vue刷新页面 刷新页面的三种方法

程序员文章站 2022-05-14 22:56:30
...

vue刷新页面 刷新页面的三种方法

在项目中又刷新整个页面的需求,所以我们来谈谈刷新页面的方法,有两种常见的方法,还有一种不常见但是极力推荐的。

  1. 第一种

    this.$router.go(0)

  2. 第二种

    location. reload()

    这两种和Ctrl+r 、F5效果一样,是重新加载整个页面,会出现一瞬间白屏的效果,用户体验不好,所以不推荐使用

  3. 第三种(推荐),通过provide / inject 的方式,具体方法如下
    App.vue 文件

<template>
  <div id="app">
  // 通过控制 router-view的显示隐藏重新加载 
    <router-view v-if="isRouteAlive" />
  </div>
</template>

<script>
export default {
  name: 'app',
  provide() {
    return {
      reload: this.reload
    }
  },
  data() {
    return {
      isRouteAlive: true
    }
  },
  methods: {
    reload() {
      this.isRouteAlive = false
      this.$nextTick(() => {
        this.isRouteAlive = true
      })
    }
  }
}

在需要刷新的页面使用方法如下
test.vue

<template>
	<div>
		<el-button @click="reload">刷新</el-button>
	</div>
</template>
<script>
	export default {
  	name: 'test',
  	inject:['reload'],
  	data() {
  		retrun {}
  	}
</script>

这样子就可以实现刷新了,并且不会出现白屏的效果,用户体现会好很多。

相关标签: vue