web
react 환경에서 라우트 이동 시 스크롤 초기화
Jaaaay
2023. 1. 15. 15:44
페이지 라우트 이동 시 스크롤 구현 및 스크롤 애니메이션 추가
import React, { useEffect } from "react";
import { useLocation } from "react-router-dom";
type ScrollProps = {
children: React.ReactNode;
};
function ScrollToTop(props: ScrollProps) {
const { pathname } = useLocation();
useEffect(() => {
window.scrollTo({ top: 0, left: 0, behavior: "smooth" });
}, [pathname]);
return <div>{props.children}</div>;
}
export default ScrollToTop;
따로 컴포넌트를 만들어줌.
<ScrollToTop>
<App />
</ScrollToTop>
render 할 컴포넌트 감싸주면 적용 완료