瀏覽代碼

fix: reload menu open question

 collapsed 为false时,刷新后菜单的openKeys为[]时,导致菜单不展开的问题
Ez-Z 7 年之前
父節點
當前提交
585ca55c27
共有 1 個文件被更改,包括 3 次插入2 次删除
  1. 3 2
      src/components/SiderMenu/BaseMenu.js

+ 3 - 2
src/components/SiderMenu/BaseMenu.js

@@ -126,6 +126,7 @@ export default class BaseMenu extends PureComponent {
       mode,
       location: { pathname },
       className,
+      collapsed,
     } = this.props;
     // if pathname can't match, use the nearest parent's key
     let selectedKeys = this.getSelectedMenuKeys(pathname);
@@ -133,9 +134,9 @@ export default class BaseMenu extends PureComponent {
       selectedKeys = [openKeys[openKeys.length - 1]];
     }
     let props = {};
-    if (openKeys) {
+    if (openKeys && !collapsed) {
       props = {
-        openKeys,
+        openKeys: openKeys.length === 0 ? [...selectedKeys] : openKeys,
       };
     }
     const { handleOpenChange, style, menuData } = this.props;