Vue中刷新当前页面

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/mouday/article/details/100032830

刷新页面

方法一

window.reload()

方法二

this.$router.go(0);

以上两种方式会出现白屏

方法三

不会有闪烁的空白出现
App.vue

<template>
  <div id="app">
    <!-- 增加判断,让其隐藏 -->
    <router-view v-if="isRouterAlive"/>
  </div>
</template>

<script>
export default {
  name: 'App',

  // 暴露reload,方便后面组件调用
  provide(){
    return {
      reload: this.reload
    }
  },

  data(){
    return {
      isRouterAlive: true
    }
  },

  methods:{
    // 重新加载方法
    reload(){
      this.isRouterAlive = false;
      this.$nextTick(()=>{
        this.isRouterAlive = true;
      })
    }
  }
}
</script>

子组件调用刷新方法

<script>
export default {

  // 获取APP.vue里的reload方法
  inject: ["reload"],

  methods: {
    reloadPage() {
      // 刷新页面
      this.reload(); 
    }
  }
}
</script>

参考
vue项目如何刷新当前页面

文章创建于: 2019-08-23 10:40:08
展开阅读全文

没有更多推荐了,返回首页