Skip to content

Commit d820ca9

Browse files
committed
refine main.js role logic
1 parent 0427359 commit d820ca9

File tree

3 files changed

+16
-22
lines changed

3 files changed

+16
-22
lines changed

src/main.js

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ router.beforeEach((to, from, next) => {
4848
next({ path: '/' });
4949
} else {
5050
if (to.meta && to.meta.role) { // 判断即将进入的页面是否需要权限
51-
if (store.getters.uid) { // 判断当前用户是否已拉取完info信息
51+
if (store.getters.roles.length !== 0) { // 判断当前用户是否已拉取完info信息
5252
if (hasPermission(store.getters.roles, to.meta.role)) { // 判断权限
5353
next(); // 有权限
5454
} else {
@@ -70,7 +70,20 @@ router.beforeEach((to, from, next) => {
7070
});
7171
}
7272
} else { // 页面不需要权限 直接进入
73-
next();
73+
console.log(store.getters.roles)
74+
if (store.getters.roles.length !== 0) {
75+
next();
76+
} else {
77+
store.dispatch('GetInfo').then(() => {
78+
permission.init({
79+
roles: store.getters.roles,
80+
router: router.options.routes
81+
});
82+
next();
83+
}).catch(err => {
84+
console.log(err);
85+
});
86+
}
7487
}
7588
}
7689
} else {

src/mock/login.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ const userMap = {
3030

3131
export default {
3232
loginByEmail: config => {
33-
console.log(config)
3433
const { email } = JSON.parse(config.body);
3534
return userMap[email.split('@')[0]];
3635
},

src/views/layout/Layout.vue

Lines changed: 1 addition & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,7 @@
1212

1313
<script>
1414
import { Navbar, Sidebar, AppMain } from 'views/layout';
15-
import store from 'store';
16-
import router from 'router';
17-
import permission from 'store/permission';
15+
1816
export default {
1917
name: 'layout',
2018
components: {
@@ -26,22 +24,6 @@
2624
sidebar() {
2725
return this.$store.state.app.sidebar;
2826
}
29-
},
30-
beforeRouteEnter: (to, from, next) => {
31-
const roles = store.getters.roles;
32-
if (roles.length !== 0) {
33-
next();
34-
return
35-
}
36-
store.dispatch('GetInfo').then(() => {
37-
permission.init({
38-
roles: store.getters.roles,
39-
router: router.options.routes
40-
});
41-
next();
42-
}).catch(err => {
43-
console.log(err);
44-
});
4527
}
4628
}
4729
</script>

0 commit comments

Comments
 (0)