질문을 하기 전에 전체 작업에 대한 길고 얇게 설명부터 드리도록 하겠습니다.

1. server.js 파일의 일부입니다.
db는 몽고db를 사용했으며 스키마 정의해서 해당하는 api 엔드포인트로 get 요청을 보냈습니다.
2. menu.js 파일의 일부로 axios 코드입니다.
3. 마찬가지로 menu.js 인데 여기에는 route도 함께 정의되어 있습니다. 보시다시피 db에서 받은 데이터를 state에 담아 props로 전달해주고 있습니다.
4. write.js 로 전달받은 props 를 맵핑했습니다.
5. 마찬가지로 write.js 파일입니다. 컴포넌트를 하나 추가해서 link 태그로 묶어 해당하는 id 값에 데이터를 view 컴포넌트에서 보여줄 것입니다.
6. 문제의 view.js 파일입니다.
server.js 에서 view/:id 로 api get 요청을 추가해주었습니다. 처음에는 menu.js 에 했었는데 id 값을 전달받지 못하더라구요.
그래서 view.js 안에 id 맞는 데이터를 전달받도록 코드를 작성했습니다.
view에서 까지 값이 잘 들어옵니다. 그런데 문제는 view 에서 다른 곳으로 라우팅할 때는 데이터 값이 사라집니다.
view 말고 다른 곳에서는 라우팅해도 문제가 발생하지 않습니다. (가령 write 에서 memo 나 write 에서 home 등)
심지어 라우팅할 때 데이터 값이 아예 안 들어오는 것도 아니고 들어왔다가 사라집니다. 그래서 페이지에서는 잠시 정상정인 화면이 보였다가 빈 페이지가 되어버립니다.
아래 콘솔은 write 에서 view 로 갔다가 다시 write 로 돌아왔을 때 찍히는 값입니다.
보시다시피 아주 찰나의 순간에 write.js 안에 데이터가 정상적으로 들어왔다가 바로 값이 사라져서 맵핑이 되질 않습니다.
질문 1. 해당 문제의 원인이 뭔지 알고 싶습니다.
질문 2. view.js 안에 axios 를 쓰지 말고 menu.js 에 axios 코드를 쓰면 id 값을 받아오질 못하는데 혹시 방법이 있을까요?