From 1a0b6c69df8bafa8d9c612a5ea04a34be712001c Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期三, 24 四月 2024 16:01:40 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
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