通過v-if的功能觸發頁面刷新,結合provide和inject(reload)


 一、app.vue

利用v-if可以刷新頁面的屬性,同時使用provide和inject將祖先節點的數據傳遞給子代節點

<template>
  <div id="app">
    <router-view v-if="isShow"></router-view>   //①
  </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>

二、在需要刷新的子路由頁面引入inject,然后執行reload事件,就可以刷新頁面了。

export default {
  name: "demo",
  inject:['reload'],
  data() {
    return {
      
    }
  },
  methods: {
    reflesh(){ this.reload() },
  }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM