美文网首页
Vue页面重载

Vue页面重载

作者: 鹊南飞_ | 来源:发表于2020-06-18 17:00 被阅读0次

    通过v-if的功能触发页面刷新,结合provideinject

    1. 修改主文件App.vue

    原文件如下

    <template>
      <div id="app">
        <router-view/>
      </div>
    </template>
    
    <script>
    export default {
      name: 'App'
    }
    </script>
    
    <style lang="less">
    @import "./assets/css/app.css";
    @import "./assets/css/time-range.css";
    </style>
    
    

    修改后的文件如下

    <template>
      <div id="app">
        <router-view v-if="isRouterAlive"/>
      </div>
    </template>
    
    <script>
    export default {
      name: 'App',
      provide(){
        return{
          reload: this.reloadVue
        }
      },
      data(){
        return{
          isRouterAlive: true
        }
      },
      methods:{
        reloadVue(){
          this.isRouterAlive = false
          this.$nextTick(function () {
            this.isRouterAlive = true
    
          })
        }
      }
    }
    </script>
    
    <style lang="less">
    @import "./assets/css/app.css";
    @import "./assets/css/time-range.css";
    </style>
    
    
    1. 在需要用到的主文件导入
    export default {
      name: "demo",
      inject:['reload'],
      data() {
        return {
          
        }
      },
      methods: {
        reflesh(){
          this.reload()
        },
      }
    }
    

    相关文章

      网友评论

          本文标题:Vue页面重载

          本文链接:https://www.haomeiwen.com/subject/auwuxktx.html