在vue管理后台中,表格经常会有增删改查,修改完之后就要刷新页面或者调方法,但是在权限菜单角色页面,你如果改变当前登录的账号的权限时,你就需要全局刷新,然而好多方法并没有在当前页,所以比较麻烦,如果用this.$router.go(0),会强制刷新比较丑,所以就得允许一个祖先组件向其所有子孙后代注入一个依赖,不论组件层次有多深,并在起上下游关系成立的时间里始终生效

1.根组件APP.vue里面,写入刷新方法,路由初始状态是显示的

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

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

 2.然后在子组件里面进行引用

3.在执行完相应的操作,后调用reload方法

 

Logo

前往低代码交流专区

更多推荐