Post

useHistory 사용 오류

1
export 'useHistory' (imported as 'useHistory') was not found in 'react-router-dom'

문제

프로젝트 만드는 과정에서 history hook을 사용하려고 했더니, 오류가 발생

이유

버전에 따라 명령어가 변경됨

해결방법

  1. 6버전 미만 버전으로 다운그레이드하기
  2. useNavigate 대체하기

(1번) v6 미만 버전에선 useHistory 명령어

1
2
3
4
5
6
const history = useHistory();

history.push("/");
history.goback();
history.go(-2);
history.push(`/user/${user._id}`);

(2번) v6 이상 버전에서는 useNavigate

1
2
3
4
5
6
const navigate = useNavigate();

navigate("/");
navigate(-1);
navigate(-2);
navigate(`/user/${user._id}`);

참고 블로그

This post is licensed under CC BY 4.0 by the author.