Browse Source

fix(popup): h5 滑动内容穿透修复

richard1015 4 years ago
parent
commit
2f5ea0326d
1 changed files with 9 additions and 5 deletions
  1. 9 5
      src/packages/__VUE/overlay/index.vue

+ 9 - 5
src/packages/__VUE/overlay/index.vue

@@ -20,7 +20,8 @@ import {
   onBeforeUnmount,
   onDeactivated,
   onMounted,
-  onActivated
+  onActivated,
+  watchEffect
 } from 'vue';
 import { createComponent } from '../../utils/create';
 const { componentName, create } = createComponent('overlay');
@@ -68,12 +69,15 @@ export default create({
       };
     });
 
-    watch(props.lockScroll, (value) => {
-      value ? lock() : unlock();
-    });
+    watch(
+      () => props.visible,
+      (value) => {
+        value ? lock() : unlock();
+      }
+    );
 
     const lock = () => {
-      if (props.lockScroll) {
+      if (props.lockScroll && props.visible) {
         document.body.classList.add('nut-overflow-hidden');
       }
     };