Kaynağa Gözat

perf: 优化摄像头查询功能

曾坤森 1 hafta önce
ebeveyn
işleme
8b7859eea0

+ 1 - 1
src/layout/default-layout.vue

@@ -141,7 +141,7 @@ onMounted(() => {
   justify-content: end;
   width: 100%;
   height: @nav-size-height;
-  background-color: white;
+  background-color: var(--color-bg-2);
 }
 
 .layout-sider {

+ 6 - 0
src/utils/const.ts

@@ -1,3 +1,5 @@
+import instance from '@/api/interceptor';
+
 export const downLoadFun = (url: string) => {
   const baseUrl = import.meta.env.VITE_API_DOWN_URL;
   if (baseUrl) {
@@ -32,3 +34,7 @@ export const getRules = (t: (key: string) => string) => ({
     },
   ],
 });
+export const ROUTEKEY = 'gui-route';
+export interface RouteKey {
+  route: string | null;
+}

+ 6 - 2
src/views/dashboard/camera/edit.vue

@@ -77,7 +77,8 @@ import { useI18n } from 'vue-i18n';
 import { Modal } from '@arco-design/web-vue';
 import CameraDialog from './component/CameraDialog.vue';
 import router from '@/router';
-
+import { useStorage } from '@vueuse/core';
+import { ROUTEKEY, RouteKey } from '@/utils/const';
 const this_ = getCurrentInstance()?.appContext.config.globalProperties;
 
 const { t } = useI18n();
@@ -89,9 +90,12 @@ const { loading, setLoading } = useLoading(true);
 const {
   params: { route },
 } = useRoute();
+const obj = useStorage<RouteKey>(ROUTEKEY, {
+  route: null,
+});
 const loadData = () => {
   setLoading(true);
-  queryCameraList({})
+  queryCameraList({ route: obj.value.route })
     .then(res => {
       data.value.length = 0;
       data.value.push(

+ 6 - 3
src/views/dashboard/camera/index.vue

@@ -122,11 +122,12 @@ import {
 } from '@/api/camera';
 import type { CameraParams, DataList } from '@/api/camera';
 import { SizeProps, Pagination } from '@/types/global';
-import BTag from '@/components/business/b-tag/index.vue';
 import useLoading from '@/hooks/loading';
 import { useI18n } from 'vue-i18n';
 import router from '@/router';
 import type { RequestOption } from '@arco-design/web-vue';
+import { ROUTEKEY, RouteKey } from '@/utils/const';
+import { useStorage } from '@vueuse/core';
 
 const { t } = useI18n();
 
@@ -170,9 +171,10 @@ const generateFormModel = () => {
 const renderData = ref<DataList[]>([] as DataList[]);
 const size = ref<SizeProps>('medium');
 const formModel = ref<CameraParams>(generateFormModel());
-const showEditDialog = shallowRef<boolean>(false);
-const cameraId = shallowRef<number | null>(null);
 const this_ = getCurrentInstance()?.appContext.config.globalProperties;
+const obj = useStorage<RouteKey>(ROUTEKEY, {
+  route: null,
+});
 function searchTable() {
   setLoading(true);
   queryCameraList(formModel.value)
@@ -239,6 +241,7 @@ const onPageChange = (current: number) => {
   searchTable();
 };
 const handleToEditFun = (record: DataList) => {
+  obj.value.route = formModel.value.route;
   router.push({
     name: 'CameraDetail',
     params: { route: record.route },