修复:允许路由在框架外显示
This commit is contained in:
@@ -120,11 +120,11 @@ class MenuViewSet(CustomModelViewSet):
|
|||||||
"""用于前端获取当前角色的路由"""
|
"""用于前端获取当前角色的路由"""
|
||||||
user = request.user
|
user = request.user
|
||||||
if user.is_superuser:
|
if user.is_superuser:
|
||||||
queryset = self.queryset.filter(status=1)
|
queryset = self.queryset.filter(status=1).order_by("id")
|
||||||
else:
|
else:
|
||||||
role_list = user.role.values_list('id', flat=True)
|
role_list = user.role.values_list('id', flat=True)
|
||||||
menu_list = RoleMenuPermission.objects.filter(role__in=role_list).values_list('menu_id', flat=True)
|
menu_list = RoleMenuPermission.objects.filter(role__in=role_list).values_list('menu_id', flat=True)
|
||||||
queryset = Menu.objects.filter(id__in=menu_list)
|
queryset = Menu.objects.filter(id__in=menu_list).order_by("id")
|
||||||
serializer = WebRouterSerializer(queryset, many=True, request=request)
|
serializer = WebRouterSerializer(queryset, many=True, request=request)
|
||||||
data = serializer.data
|
data = serializer.data
|
||||||
return SuccessResponse(data=data, total=len(data), msg="获取成功")
|
return SuccessResponse(data=data, total=len(data), msg="获取成功")
|
||||||
|
|||||||
@@ -93,6 +93,8 @@ export function formatTwoStageRoutes(arr: any) {
|
|||||||
return newArr;
|
return newArr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const frameOutRoutes = staticRoutes.map(item => item.path)
|
||||||
|
|
||||||
// 路由加载前
|
// 路由加载前
|
||||||
router.beforeEach(async (to, from, next) => {
|
router.beforeEach(async (to, from, next) => {
|
||||||
NProgress.configure({showSpinner: false});
|
NProgress.configure({showSpinner: false});
|
||||||
@@ -109,8 +111,9 @@ router.beforeEach(async (to, from, next) => {
|
|||||||
} else if (token && to.path === '/login') {
|
} else if (token && to.path === '/login') {
|
||||||
next('/home');
|
next('/home');
|
||||||
NProgress.done();
|
NProgress.done();
|
||||||
|
}else if(token && frameOutRoutes.includes(to.path) ){
|
||||||
|
next()
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
const storesRoutesList = useRoutesList(pinia);
|
const storesRoutesList = useRoutesList(pinia);
|
||||||
const {routesList} = storeToRefs(storesRoutesList);
|
const {routesList} = storeToRefs(storesRoutesList);
|
||||||
if (routesList.value.length === 0) {
|
if (routesList.value.length === 0) {
|
||||||
|
|||||||
Reference in New Issue
Block a user