Selaa lähdekoodia

修复去除场景重建

bill 1 vuosi sitten
vanhempi
commit
cb43de6e8e
4 muutettua tiedostoa jossa 37 lisäystä ja 29 poistoa
  1. 2 2
      src/main.vue
  2. 33 25
      src/router/info.ts
  3. 1 1
      src/views/graphic/container.vue
  4. 1 1
      src/views/roads/tabulation.vue

+ 2 - 2
src/main.vue

@@ -1,9 +1,9 @@
 <template>
   <router-view v-slot="{ Component, route, ...a }">
-    <keep-alive v-if="route?.name != readyRouteName.tabulation">
+    <keep-alive :exclude="readyRouteName.tabulation">
       <component :is="Component" />
     </keep-alive>
-    <component :is="Component" v-else />
+    <!-- <component :is="Component" v-else /> -->
   </router-view>
 </template>
 

+ 33 - 25
src/router/info.ts

@@ -1,75 +1,83 @@
-import { modeFlags, ModeFlag } from '@/store/sys';
-import { ComputedRef } from 'vue';
-import { RouteRecordRaw } from 'vue-router';
-import { RouteNameRaw, RouteMetaRaw, readyRouteMeta, readyRouteName, defRouteName } from './constant';
+import { modeFlags, ModeFlag } from "@/store/sys";
+import { ComputedRef } from "vue";
+import { RouteRecordRaw } from "vue-router";
+import {
+  RouteNameRaw,
+  RouteMetaRaw,
+  readyRouteMeta,
+  readyRouteName,
+  defRouteName,
+} from "./constant";
 
-export type RouteAtom<T extends ModeFlag = any, key = RouteNameRaw<T>[keyof RouteNameRaw<T>]> = {
+export type RouteAtom<
+  T extends ModeFlag = any,
+  key = RouteNameRaw<T>[keyof RouteNameRaw<T>]
+> = {
   path: string;
   name: key;
   meta: key extends keyof RouteMetaRaw<T> ? RouteMetaRaw<T>[key] : never;
-  component: RouteRecordRaw['component'];
+  component: RouteRecordRaw["component"];
   redirect?: string;
   children?: RoutesRaw<T>;
 };
 
 export type RoutesRaw<T extends ModeFlag = any> = RouteAtom<T>[];
 
-import graphic from '@/views/graphic/index.vue';
 export const writeRoutesRaw: RoutesRaw<typeof modeFlags.LOGIN> = [
   {
-    path: '/graphic/:mode/:action/:id',
+    path: "/graphic/:mode/:action/:id",
     name: readyRouteName.graphic,
     meta: readyRouteMeta.graphic,
-    component: () => import('@/views/graphic/index.vue'),
+    component: () => import("@/views/graphic/index.vue"),
   },
   {
-    path: '/scene',
+    path: "/scene",
     name: readyRouteName.scene,
     meta: readyRouteMeta.scene,
-    component: () => import('@/views/scene/index.vue'),
+    component: () => import("@/views/scene/index.vue"),
   },
 
   {
-    path: '/photos',
+    path: "/photos",
     name: readyRouteName.photos,
     meta: readyRouteMeta.photos,
-    component: () => import('@/views/photos/index.vue'),
+    component: () => import("@/views/photos/index.vue"),
   },
   {
-    path: '/accidents',
+    path: "/accidents",
     name: readyRouteName.accidents,
     meta: readyRouteMeta.accidents,
-    component: () => import('@/views/accidents/index.vue'),
+    component: () => import("@/views/accidents/index.vue"),
   },
   {
-    path: '/gena4/:id1/:id2',
+    path: "/gena4/:id1/:id2",
     name: readyRouteName.gena4,
     meta: readyRouteMeta.gena4,
-    component: () => import('@/views/accidents/print.vue'),
+    component: () => import("@/views/accidents/print.vue"),
   },
   {
-    path: '/roads',
+    path: "/roads",
     name: readyRouteName.roads,
     meta: readyRouteMeta.roads,
-    component: () => import('@/views/roads/index.vue'),
+    component: () => import("@/views/roads/index.vue"),
   },
   {
-    path: '/tabulation/:id',
+    path: "/tabulation/:id",
     name: readyRouteName.tabulation,
     meta: readyRouteMeta.tabulation,
-    component: () => import('@/views/roads/tabulation.vue'),
+    component: () => import("@/views/roads/tabulation.vue"),
   },
   {
-    path: '/tables/:name',
+    path: "/tables/:name",
     name: readyRouteName.tables,
     meta: readyRouteMeta.tables,
-    component: () => import('@/views/tables/index.vue'),
+    component: () => import("@/views/tables/index.vue"),
   },
   {
-    path: '/demo/:id',
+    path: "/demo/:id",
     name: readyRouteName.demo,
     meta: readyRouteMeta.demo,
-    component: () => import('@/views/tables/demo.vue'),
+    component: () => import("@/views/tables/demo.vue"),
   },
 ];
 

+ 1 - 1
src/views/graphic/container.vue

@@ -7,7 +7,7 @@
 </template>
 
 <script setup lang="ts">
-import { computed, nextTick, onMounted, ref, watchEffect } from "vue";
+import { computed, nextTick, onMounted, ref, watchEffect } from "vue"; 
 import { setCanvas } from "@/hook/useGraphic";
 import { useData } from "./data";
 import router from "@/router";

+ 1 - 1
src/views/roads/tabulation.vue

@@ -253,7 +253,7 @@ const saveHandler = genUseLoading(async () => {
     ...history.value.value,
     url: await getLayoutImage(),
   };
-  router.replace({ name: writeRouteName.roads, params: {type: 'table'} });
+  router.replace({ name: writeRouteName.roads, params: { type: "table" } });
 });
 </script>