Link to 사용해서 주소창은 /detail 로 바뀌지만 페이지는 /detail 로 바뀌지 않고 작동 안하는 현상 해결하기
비슷한 질문이 많아 문제 해결 시도들을 적어놓고 마지막 방법에 대해 질문해봅니다. 페이지 render 문제라는데 이번 버전 리액트에선 이 문제가 어떻게 깔끔하게 해결될 수 있는지 궁금하네요.
1. (비슷한 질문에 대한 선생님의 답변 방법)
index.js 의 코드를 구버전 리액트 코드로 바꾼다. (render ... document.querySelectorById ... 등등 부분 모두)
>>>>>> 해결은 되지만 콘솔창에 붉은 글씨(대충 구버전은 코드는 앞으로 지원 안 한다는 뜻)가 신경쓰임
2. (웹 검색해서 찾은 해결 방법 중 가장 간단한 방법)
index.js 에서 <React.StrictMode> 태그를 지움
>>>>>> 해결은 되지만 콘솔창에 대충 a 태그가 문제라는 붉은 글씨 뜸
3. (시도해본 방법)
2번처럼 index.js 에서 <React.StrictMode> 태그를 지우고,
{ useHistory } 를 import 해서 Link to 대신 onClick 에서 history 이용.
import { useHistory } from 'react-router-dom';
let history = useHistory();
...
<Nav.Link onClick={() => {
history.push('/detail')
}}>Detail</Nav.Link>
...
>>>>>> 콘솔창 붉은글씨 사라지고 잘 작동됨, 근데 이렇게 작동하는게 Link to 처럼 새로고침 없이 잘 작동하는 상태인가요? StrictMode 태그를 지우면 대표적으로 어떤 문제가 발생할 수 있나요?