Răsfoiți Sursa

Popover: fix: delayed popover appears after mouse left

laobubu 8 ani în urmă
părinte
comite
c1ce7a21b9
1 a modificat fișierele cu 3 adăugiri și 2 ștergeri
  1. 3 2
      packages/popover/src/main.vue

+ 3 - 2
packages/popover/src/main.vue

@@ -109,16 +109,17 @@ export default {
       this.showPopper = false;
     },
     handleMouseEnter() {
+      clearTimeout(this._timer);
       if (this.openDelay) {
-        setTimeout(() => {
+        this._timer = setTimeout(() => {
           this.showPopper = true;
         }, this.openDelay);
       } else {
         this.showPopper = true;
       }
-      clearTimeout(this._timer);
     },
     handleMouseLeave() {
+      clearTimeout(this._timer);
       this._timer = setTimeout(() => {
         this.showPopper = false;
       }, 200);