From b76fd2fa93c2036d66e5142654cf66cf1e371531 Mon Sep 17 00:00:00 2001
From: 龚焕茏 <2842157468@qq.com>
Date: 星期二, 30 四月 2024 17:12:34 +0800
Subject: [PATCH] 改为连表查询

---
 src/views/screen/components/screen-wrapper/index.vue |   66 ++++++++++++++++++++++++++------
 1 files changed, 53 insertions(+), 13 deletions(-)

diff --git a/src/views/screen/components/screen-wrapper/index.vue b/src/views/screen/components/screen-wrapper/index.vue
index adb161a..b80e0e0 100644
--- a/src/views/screen/components/screen-wrapper/index.vue
+++ b/src/views/screen/components/screen-wrapper/index.vue
@@ -5,19 +5,21 @@
       杩斿洖
     </div>
     <div class="wrapper-content">
+      <screen-map-three :loadEnd="isEnd"></screen-map-three>
       <div class="left-container wrapper">
-        <screen-face class="animate-enter-x enter-left"></screen-face>
-        <screen-car class="animate-enter-x enter-left animate-delay-1"></screen-car>
-        <screen-video class="animate-enter-x enter-left animate-delay-2"></screen-video>
+        <screen-face class="enter-left" :class="{ 'animate-enter-x': isEnd }"></screen-face>
+        <screen-car class="enter-left animate-delay-1" :class="{ 'animate-enter-x': isEnd }"></screen-car>
+        <screen-video class="enter-left animate-delay-2" :class="{ 'animate-enter-x': isEnd }"></screen-video>
       </div>
       <div class="center-container center-wrapper">
-        <screen-map></screen-map>
-        <screen-table class="animate-enter-y enter-top"></screen-table>
+        <screen-map-cover></screen-map-cover>
+        <screen-table class="enter-top" :class="{ 'animate-enter-y': isEnd }"></screen-table>
         <!-- <screen-detection></screen-detection> -->
 
       </div>
       <div class="right-container wrapper">
-        <screen-examine class="animate-enter-x enter-right"></screen-examine>
+        <screen-examine class="enter-right" :class="{ 'animate-enter-x': isEnd }"></screen-examine>
+        <screen-data class="enter-right animate-delay-1" :class="{ 'animate-enter-x': isEnd }"></screen-data>
       </div>
     </div>
   </div>
@@ -29,23 +31,47 @@
 import ScreenFace from '../screen-face/index';
 import ScreenVideo from '../screen-video/index';
 import ScreenCar from '../screen-car/index';
-import ScreenMap from '../screen-map/index';
+import ScreenMapCover from '../screen-map-cover/index';
 import ScreenTable from '../screen-table/index';
+import ScreenMapThree from '../screen-map-three/index';
+import ScreenData from '../screen-data/index';
+
 export default {
   name: 'ScreenWrapper',
   components: {
     SelectItem,
     ScreenExamine,
-    ScreenMap,
     ScreenTable,
+    ScreenMapCover,
+    ScreenMapThree,
     ScreenFace,
     ScreenVideo,
-    ScreenCar
+    ScreenCar,
+    ScreenData
+  },
+  data() {
+    return {
+      isEnd: false,
+    }
   },
   methods: {
     returnPath() {
       this.$router.push('/index');
+    },
+    checkAnimationEnd(event) {
+      if (this.isEnd) return;
+      if (event.propertyName === 'transform') {
+        this.isEnd = true;
+      }
     }
+  },
+  mounted() {
+    const container = document.querySelector('.screen-wrapper');
+    container.addEventListener('transitionend', this.checkAnimationEnd);
+  },
+  beforDestroy() {
+    const container = document.querySelector('.screen-wrapper');
+    container.removeEventListener('transitionend', this.checkAnimationEnd);
   }
 }
 </script>
@@ -85,7 +111,7 @@
 }
 
 .wrapper {
-  width: 23%;
+  width: 25%;
   height: 100%;
   box-sizing: border-box;
   padding: 0 10px;
@@ -103,7 +129,7 @@
 }
 
 .center-wrapper {
-  width: 54%;
+  width: 50%;
   height: 100%;
   box-sizing: border-box;
   padding: 0 10px;
@@ -111,24 +137,30 @@
   flex-direction: column;
   justify-content: space-between;
 }
+
 .animate-enter-x {
   animation: enter-x 0.4s ease forwards;
 }
+
 .animate-enter-y {
   animation: enter-y 0.4s ease forwards;
 }
+
 .enter-left {
   transform: translateX(-100px);
   opacity: 0;
 }
+
 .enter-right {
   transform: translateX(100px);
   opacity: 0;
 }
+
 .enter-top {
   transform: translateY(100px);
   opacity: 0;
 }
+
 .animate-delay-1 {
   animation-delay: 0.1s;
 }
@@ -142,14 +174,22 @@
 }
 
 @keyframes enter-x {
-  100% {
+  from {
+    opacity: 0;
+  }
+
+  to {
     opacity: 1;
     transform: translateX(0);
   }
 }
 
 @keyframes enter-y {
-  100% {
+  from {
+    opacity: 0;
+  }
+
+  to {
     opacity: 1;
     transform: translateY(0);
   }

--
Gitblit v1.8.0