본문 바로가기

웹/React

Link로 데이터를 보내보기

현제 라우터 상황

보내고 싶은 것

여기서 url 은 `/item/${data.id}` 입니다. Route로 state를 보내기는다는데 어떤식으로 받는지 모르겠습니다.

 

이렇게 props로 받는거 같았는데 찍히지는 않습니다. http body 형식으로 json을 받아오는게 목표입니다.

 

찾아보니 match, location, 등을 써서 불러오는데 Router 버전이 달라서인지 지금은 먹히지 않았습니다.

 

출처: https://www.youtube.com/watch?v=RUFxmAjbNbg 

유튜브를 찾아보니 useLocation()이라는 함수가 있었습니다!

이걸로 Link에서 보낸 state를 가져올 수 있게되었습니다.

 

근데 이렇게 하면 locatino에 state 부분이 null이 찍히게 됩니다.

Link를 다시 수정해야 합니다.

https://stackoverflow.com/questions/67061088/can-not-pass-state-with-react-router-dom-v6-beta-state-is-null

여기서 답을 얻을 수 있었습니다. 버전이 달라지면서 

<Link to={'/page1'} state={{ state: 'mystate' }} >Page 1</Link>

이러한 형태로 써야하는거 같습니다.

 

728x90

' > React' 카테고리의 다른 글

[React] React에서 devExtreme 쓰는법  (0) 2023.03.16
useEffect 메모리 누수  (0) 2022.04.09
axios로 데이터 받아보기  (0) 2022.03.07
React에서 이미지를 웹팩 안에서 꺼내쓰기  (0) 2022.02.21
async, await  (0) 2022.01.14