인프런 커뮤니티 질문&답변
props.history.push('/') 에서 자꾸 에러가 발생합니다.
작성
·
5.1K
2
강의 잘듣고 있습니다.
처음 해보는것이라 따라해보면서 하고있는데, 아무리 따라해도 이 부분이 막히고 있습니다.
Uncaught (in promise) TypeError: Cannot read property 'push' of undefined
라는 에러가 나와서 많이 어렵습니다. 도움을 부탁드립니다.
답변 5
19
위 방법으로도 안되시는 분들은 여기 참고하셔도 좋을것 같아요!
저처럼 react-router-dom v6 사용하시는 분들은
import { useNavigate } from "react-router-dom";
LoginPage 함수 내부에서 아래 처럼 선언 해주시고
const navigate = useNavigate();
dispatch promise then 부분에
if (response.payload.loginSuccess) {
navigate(-1);
} else { ... }
저는 이런 식으로 해서 해결했습니다.
좋은 강의 잘 듣고 있습니다~~!!
!!!!
useNavigate는 react v6 에서 useHistory 가 변화한 것이라고 합니다. useHistory 에서 사용하던, window의 history를 이용한 navigate 기능도 할 수 있습니다.
가급적 useNavigate를 사용하는 것이 좋아보입니다.
8
John Ahn
지식공유자
안녕하세요 김범진님 !
loginpage 파일안에
위에는
import { withRouter } from 'react-router-dom';
이 부분은 넣어주시고
맨아래 부분에는
export default withRouter(LoginPage)
이렇게 바꿔주세요 ^^ !!!
0
0






와... 은인이십니다 ㅠㅠㅠㅠ 감사합니다 ㅠㅠㅠㅠ