diff --git a/packages/dev/s2-docs/src/Nav.tsx b/packages/dev/s2-docs/src/Nav.tsx index eaa6002bbaf..59318a15c4d 100644 --- a/packages/dev/s2-docs/src/Nav.tsx +++ b/packages/dev/s2-docs/src/Nav.tsx @@ -188,7 +188,7 @@ export function Nav() { ); } return ( - + {name}
{nav}
@@ -255,10 +255,19 @@ export function SideNavItem(props) { } export function SideNavLink(props) { - let linkRef = useRef(null); + let linkRef = useRef(null); let selected = useContext(SideNavContext); let {isExternal, ...linkProps} = props; - + + useEffect(() => { + let link = linkRef.current; + if (!link || !props.isSelected) { + return; + } + + link.scrollIntoView({block: 'start', behavior: 'smooth'}); + }, [props.isSelected]); + return ( {(renderProps) => (<>