1. 리액트 BrowserRouter로 하면 깃허브페이지나 netlify로 호스팅할때 경로가 도메인/index.html인데, 브라우저 라우터는 index.html로 경로설정을 못하니 HashRouter로 하라는 걸 알았다
관련 링크:
2. 그래서 HashRouter로 바꾸어주고
ReactDOM.render(
<HashRouter>
<App />
</HashRouter>,
document.getElementById('root'),
)
json에 homepage를 리포지토리명으로 써주어
"homepage": "/mbti_project",
^_^ 호스팅 잘되네 배포성공! 드디어 플젝 끗!!!! 이랫다
그런데?
저 태그에 a href 걸어주고 각 컴포넌트로 이동하게끔 해주려고 했는데
저렇게 경로가 이상하게 작동하는걸 알수있음
그 이유는 브라우저 라우터는
저렇게 /calendar/today 이런식으로 경로를 갈수있는데, 그 이유는 브라우저 라우터는 history api가 있기 때문에 저렇게 경로를 쓸 수 있어
근데 우리의 hashRouter은 history api가 없기에 저렇게 link, a태그로 이동하는걸로 하고싶은데? 그걸? 못하는거임;;;;
따라서 우리는 다시 browserRouter로 돌아가,
무슨... gh-page에 404.html을 넣어주면 브라우저 라우터로 해도 괜찮다는 말을 들었는데....
일단 그걸 시도해볼 생각인데......
혹시 좀 더 괜찮은 생각이 있다면 부탁해............ 저렇게 404.html로 하는방식 말고도 있을거같은데... 아오아오아오 암튼 저걸로 개삽질좀 하는중임
이 댓글은 게시물 작성자가 삭제하였습니다.
프갤은 내 일기장이야
바부 ㅇㅅㅇ
우... 혹시 도움을 줄 수 잇니... 배포가 마니 어렵내...
라우트 내부에 라우트 설정가능해 알아봐
브라우저 라우트는 애초에 벡엔드에서 모든 요청 리다이렉트 시키지 않으면 안돼서 깃허브 페이지로는 안되고 해쉬라우트 서브 라우팅은 설정가능함