vue中强制刷新页面的方法

方法一:

this.$router.go(0) // 会出现一段空白页,用户体验不好

方法二:

在app.vue中定义reload()方法

<template>
  <div id="app">
    <router-view v-if="isReload"/>
  </div>
</template>

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

  在需要强制刷新的页面引用

<script>
export default {
  inject: ['reload'],
  methods: {
    clickReload() { // 点击之后强制刷新
       this.reload()
     }
  }
}
</script>

  

posted @ 2020-09-20 08:35  半忧夏  阅读(25623)  评论(0编辑  收藏  举报