张延森 2 年前
父节点
当前提交
c909fa4da4
共有 2 个文件被更改,包括 18 次插入5 次删除
  1. 0
    4
      src/components/Image.vue
  2. 18
    1
      src/components/PopUp.vue

+ 0
- 4
src/components/Image.vue 查看文件

@@ -132,14 +132,10 @@ const onShowMapBtn = () => {
132 132
 
133 133
 // 显示详情介绍
134 134
 const onShowInfoBtn = () => {
135
-window.console.log(document,'document')
136
-  document.body.style.overflow='hidden';
137
-
138 135
   showInfo.value=true
139 136
 };
140 137
 
141 138
 const onCloseInfoBtn = () => {
142
-  document.body.style.overflow='auto';
143 139
   showInfo.value=false
144 140
 };
145 141
 

+ 18
- 1
src/components/PopUp.vue 查看文件

@@ -1,5 +1,9 @@
1 1
 <template>
2
-  <div v-if="show" class="overlay" @click="onClose">
2
+  <div
3
+    v-if="show"
4
+    class="overlay"
5
+    @click="onClose"
6
+  >
3 7
     <div class="warp" @click.stop>
4 8
       <img :src="info.image" class="image" alt="" />
5 9
       <div class="text" @scroll.passive="() => {}">
@@ -10,6 +14,8 @@
10 14
 </template>
11 15
 
12 16
 <script setup>
17
+import { onMounted, ref, watch } from 'vue';
18
+
13 19
 const props = defineProps({
14 20
   show: Boolean,
15 21
   info: Object,
@@ -18,6 +24,17 @@ const props = defineProps({
18 24
     default: () => {},
19 25
   },
20 26
 });
27
+
28
+const origin = document.body.style.overflow;
29
+
30
+watch(() => props.show, (val) => {
31
+  if (val) {
32
+    document.body.style.overflow = 'hidden';
33
+  } else {
34
+    document.body.style.overflow = origin;
35
+  }
36
+})
37
+
21 38
 </script>
22 39
 
23 40
 <style lang="less" scoped>