张延森 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
 
132
 
133
 // 显示详情介绍
133
 // 显示详情介绍
134
 const onShowInfoBtn = () => {
134
 const onShowInfoBtn = () => {
135
-window.console.log(document,'document')
136
-  document.body.style.overflow='hidden';
137
-
138
   showInfo.value=true
135
   showInfo.value=true
139
 };
136
 };
140
 
137
 
141
 const onCloseInfoBtn = () => {
138
 const onCloseInfoBtn = () => {
142
-  document.body.style.overflow='auto';
143
   showInfo.value=false
139
   showInfo.value=false
144
 };
140
 };
145
 
141
 

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

1
 <template>
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
     <div class="warp" @click.stop>
7
     <div class="warp" @click.stop>
4
       <img :src="info.image" class="image" alt="" />
8
       <img :src="info.image" class="image" alt="" />
5
       <div class="text" @scroll.passive="() => {}">
9
       <div class="text" @scroll.passive="() => {}">
10
 </template>
14
 </template>
11
 
15
 
12
 <script setup>
16
 <script setup>
17
+import { onMounted, ref, watch } from 'vue';
18
+
13
 const props = defineProps({
19
 const props = defineProps({
14
   show: Boolean,
20
   show: Boolean,
15
   info: Object,
21
   info: Object,
18
     default: () => {},
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
 </script>
38
 </script>
22
 
39
 
23
 <style lang="less" scoped>
40
 <style lang="less" scoped>