浏览器开启多个页面,如何保持显示账户统一

浏览器开启多个页面,如何保持显示账户统一

最近做后台管理系统,需要开启新页面,账号切换后,其他页面账号没有同步显示,记录一下我自己的方法。
v-if,和v-show的区别,if是将不展示的DOM元素直接被移除,而show是将没有展示的DOM元素没有被移除,仅仅是使用样式隐藏掉。我的方法就是用if切换到方法达到刷新的效果,上代码

在app.vue中添加

// An highlighted block
<template>
  <div id="app">
    <router-view v-if="isReload"/> //通过isReload切换刷新页面
  </div>
</template>

<script>
export default {
  name: 'app',
  provide () { 
  // provide和inject是成对出现的,
  //   provide在父组件中返回要传给下级的数据,
  //   inject在需要使用这个数据的子辈组件或者孙辈等下级组件中注入数据
    return {
      reload: this.reload
    }
  },
  data () {
    return {
      isReload: true
    }
  },
  methods: {
    reload () {
      this.isReload = false
      this.$nextTick(() => {
        this.isReload = true
      })
    }
  }

在需要触发刷新的界面

export default {
  inject: ['reload'],
  data () {
    return {
  },
   watch: {
    // 解决多页面账号统一问题
    token (val, old) { //监测到token的变化,刷新页面
      if (val != '' && val != null) {
        if (old != '') {
          this.reload()
        }
      }
    }
  },
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值