如何在已注册的vue-router组件之外的组件中获取$ auth值

时间:2019-09-11 06:13:17

标签: vue.js vue-component vue-router

我有一个布局主题/默认设置,里面有这样的vue-router

<template>
<div id="app">
    <component :is = "layout">
       <router-view></router-view>
    </component>
</div>
</template>
<script>
const default_layout = "theme";
export default {
computed: {
    layout(){
        return ( this.$route.meta.layout || default_layout) + '-layout';
    }
},
};
</script>

然后主题布局如下:

<template>
    <div class="app-home">
        <nav-bar/>

        <div class="container-fluid section">


                <div class="left-fixed">
                    <side-bar/>
                </div>
                <div class="right-card">
                    <slot />
                </div>

        </div>
    </div>
</template>

<script>
  import NavBar from './Navbar'
  import SideBar from './Sidebar'
  export default {      
       data() {
      return {

      }
    },
    mounted(){



    },
    components: {
      NavBar,
      SideBar
    }
  }
</script>

现在,我必须在Navbar和Sidebar中传递当前auth用户才能注销和当前用户角色,这些角色可以从vue-auth $ auth获得,但只能在路由器组件内部获得。任何人都可以帮助它解决此问题。

1 个答案:

答案 0 :(得分:0)

使用vuex,我将其称为状态,称为计算属性,并在用户登录时进行设置。