Jelajahi Sumber

fix first enter do not active the menu bug (#2399)

baiyaaaaa 8 tahun lalu
induk
melakukan
ef06717f64
1 mengubah file dengan 12 tambahan dan 1 penghapusan
  1. 12 1
      packages/menu/src/menu.vue

+ 12 - 1
packages/menu/src/menu.vue

@@ -57,6 +57,15 @@
       },
       defaultOpeneds(value) {
         this.openedMenus = value;
+      },
+      '$route': {
+        immediate: true,
+        handler(value) {
+          if (this.router) {
+            this.activedIndex = value.path;
+            this.initOpenedMenu();
+          }
+        }
       }
     },
     methods: {
@@ -100,7 +109,7 @@
       },
       handleItemClick(item) {
         let { index, indexPath } = item;
-        this.activedIndex = item.index;
+
         this.$emit('select', index, indexPath, item);
 
         if (this.mode === 'horizontal') {
@@ -109,6 +118,8 @@
 
         if (this.router) {
           this.routeToItem(item);
+        } else {
+          this.activedIndex = item.index;
         }
       },
       // 初始化展开菜单