Эх сурвалжийг харах

Menu: improve vertical collapse transition (#9777)

baiyaaaaa 7 жил өмнө
parent
commit
c4ac575f3c

+ 8 - 18
packages/menu/src/menu.vue

@@ -61,8 +61,13 @@
                 if (hasClass(el, 'el-menu--collapse')) {
                   removeClass(el, 'el-menu--collapse');
                   el.dataset.oldOverflow = el.style.overflow;
-                  el.dataset.scrollWidth = el.scrollWidth;
+                  el.dataset.scrollWidth = el.clientWidth;
                   addClass(el, 'el-menu--collapse');
+                } else {
+                  addClass(el, 'el-menu--collapse');
+                  el.dataset.oldOverflow = el.style.overflow;
+                  el.dataset.scrollWidth = el.clientWidth;
+                  removeClass(el, 'el-menu--collapse');
                 }
 
                 el.style.width = el.scrollWidth + 'px';
@@ -70,23 +75,8 @@
               },
 
               leave(el) {
-                if (!hasClass(el, 'el-menu--collapse')) {
-                  addClass(el, 'horizontal-collapse-transition');
-                  el.style.width = '64px';
-                } else {
-                  addClass(el, 'horizontal-collapse-transition');
-                  el.style.width = el.dataset.scrollWidth + 'px';
-                }
-              },
-
-              afterLeave(el) {
-                removeClass(el, 'horizontal-collapse-transition');
-                if (hasClass(el, 'el-menu--collapse')) {
-                  el.style.width = el.dataset.scrollWidth + 'px';
-                } else {
-                  el.style.width = '64px';
-                }
-                el.style.overflow = el.dataset.oldOverflow;
+                addClass(el, 'horizontal-collapse-transition');
+                el.style.width = el.dataset.scrollWidth + 'px';
               }
             }
           };