gemercheung 1 gadu atpakaļ
vecāks
revīzija
3f1bc2153e
3 mainītis faili ar 36 papildinājumiem un 10 dzēšanām
  1. 2 0
      src/router.ts
  2. 6 1
      src/store/relics.ts
  3. 28 9
      src/view/layout/slide/index.vue

+ 2 - 0
src/router.ts

@@ -13,11 +13,13 @@ const routes: RouteRecordRaw[] = [
   {
     path: "/no-persession",
     name: "no-persession",
+    meta: { title: "无权限" },
     component: () => import("@/view/no-persession.vue"),
   },
   {
     path: "/down-vision",
     name: "down-vision",
+    meta: { title: "" },
     component: () => import("@/view/down-vision.vue"),
   },
   {

+ 6 - 1
src/store/relics.ts

@@ -15,7 +15,12 @@ export const relics = ref<Relics>();
 
 errorHook.push((code) => {
   if (code === 4002) {
-    router.replace({ name: "no-persession" });
+    // (window as any).router = router
+    setTimeout(() => {
+      router.replace({ name: "no-persession" });
+    }, 500)
+    return
+    // debugger
   }
 });
 

+ 28 - 9
src/view/layout/slide/index.vue

@@ -1,9 +1,16 @@
 <template>
   <div class="slide">
-    <el-menu :default-active="(router.currentRoute.value.name as string)"
-      @select="(name: string) => router.push({ name })">
-      <sub-menu v-for="route in routes" :meta="route.meta" v-show="!route.meta.hidden" :name="(route.name as string)"
-        :key="route.name" />
+    <el-menu
+      :default-active="(router.currentRoute.value.name as string)"
+      @select="(name: string) => router.push({ name })"
+    >
+      <sub-menu
+        v-for="route in routes"
+        :meta="route.meta"
+        v-show="!route.meta.hidden"
+        :name="(route.name as string)"
+        :key="route.name"
+      />
     </el-menu>
   </div>
 </template>
@@ -15,12 +22,24 @@ import { user } from "@/store/user";
 
 import { router, findRoute } from "@/router";
 //@TODO
-const isSuper = computed(() => user.value.roles.filter(item => item.roleKey === "super_admin").length > 0)
-const normal_name = ["scene", "relics", "device", "users"];
-const super_names = ["scene", "relics", "device", "organization", "users"];
-console.log('isSuper', isSuper.value)
+const isSuper = computed(
+  () =>
+    user.value.roles.filter((item) => item.roleKey === "super_admin").length > 0
+);
+const normal_name = ["scene", "relics", "device", "users", "no-persession"];
+const super_names = [
+  "scene",
+  "relics",
+  "device",
+  "organization",
+  "users",
+  "no-persession",
+];
+console.log("isSuper", isSuper.value);
 
-const routes = isSuper.value ? super_names.map((name) => findRoute(name)!) : normal_name.map((name) => findRoute(name)!);
+const routes = isSuper.value
+  ? super_names.map((name) => findRoute(name)!)
+  : normal_name.map((name) => findRoute(name)!);
 </script>
 
 <style lang="scss" scoped>