Skip to content

Commit becec9f

Browse files
committed
feat: update menu scrollIntoView
1 parent 9116de0 commit becec9f

File tree

2 files changed

+17
-8
lines changed

2 files changed

+17
-8
lines changed

packages/crd-seed/component/Menu/MenuItem.js

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,18 +10,27 @@ function MenuItem({
1010
keyValue = '',
1111
level = 0,
1212
}) {
13-
const { theme, selectedKey, onSelect, onHoverKey } = useMenuContext()
13+
const {
14+
theme,
15+
selectedKey,
16+
onSelect,
17+
onHoverKey,
18+
inlineCollapsed
19+
} = useMenuContext()
1420
const menuItemRef = useRef(null)
1521
const menuItemselected = keyValue.indexOf(selectedKey) > -1
22+
const menuUnFoldDelayTime = 300
1623

1724
useEffect(() => {
18-
if (menuItemselected) {
19-
menuItemRef.scrollIntoView({
20-
block: 'center',
21-
behavior: 'smooth'
22-
})
25+
if (menuItemselected && (inlineCollapsed === false)) {
26+
setTimeout(() => {
27+
menuItemRef.current.scrollIntoView({
28+
block: 'center',
29+
behavior: 'smooth'
30+
})
31+
}, menuUnFoldDelayTime)
2332
}
24-
}, [])
33+
}, [keyValue, selectedKey, inlineCollapsed])
2534

2635
const handleOnClick = () => {
2736
onSelect(keyValue)

packages/crd-seed/layout/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ function BasicLayout({
2424
}) {
2525
const { pathname } = location
2626
const { user, repo, branch = 'main', language = 'en', menuOpenKeys } = DOCSCONFIG || {}
27-
const [inlineCollapsed, setInlineCollapsed] = useState(isMobile)
27+
const [inlineCollapsed, setInlineCollapsed] = useState(true)
2828
const [selectedKey, setSelectedKey] = useState('')
2929
const curOpenKeys = getOpenSubMenuKeys({
3030
pathname,

0 commit comments

Comments
 (0)