【发布时间】:2017-05-20 06:35:33
【问题描述】:
我正在构建 SPA,问题是检查用户是否为管理员。
Vue.auth.getUserInfo() 之后我想停止整个应用程序并等待 API 响应,Vue.auth.user.isAdmin 始终为 false,因为我没有来自 api 的响应...
这里是 router.beforeEach
router.beforeEach((to, from, next) => {
if(Vue.auth.user.authenticated == false) {
Vue.auth.getUserInfo();
}
if(Vue.auth.user.isAdmin) {
next({ name: 'admin.index' })
} else {
next({name: 'client.index'})
}
}
获取用户信息方法:
getUserInfo() {
Vue.http.get('/api/me')
.then(({data}) => {
this.user = data;
}, () => {
this.logout();
})
}
【问题讨论】:
-
很遗憾你错过了我的答案,因为它是在一分钟前发布的并且已经失败了......
-
不,伙计,对不起,但您的答案不完整,因为如果用户通过身份验证会发生什么?您的回答是正确的,但它缺少一小部分代码,我非常感谢您试图帮助我。非常感谢!!
标签: javascript vue.js vuejs2 vue-router vue-resource