vue无痕刷新

父组件

<template>
  <div id="app">
    <router-view v-if="isShow"/>
  </div>
</template>
<script>
export default {
  name: 'App',
  provide () {
    return {
      reload: this.reload
    }
  },
  data () {
    return {
      isShow: true
    }
  },
  methods: {
    reload () {
      this.isShow = false
      this.$nextTick(function () {
        this.isShow = true
      })
    }
  }
}
</script>
<style>
body,html {
  height: 100%;
}
#app {
  height: 100%;
}
</style>

子组件

  props: {},
  inject:['reload'],
  data() {
    return {}
   }    

使用
this.reload();
posted @ 2019-12-27 14:10  王希有  阅读(246)  评论(0编辑  收藏  举报