React

[React / Recoil] Link 태그와 a 태그의 차이(userState가 undefined가 생기는 문제)

Chae-ri🍒 2023. 6. 19. 12:39

recoil로 상태 관리를 했는데 userState가 바뀌면 안되는데 자꾸 상태 데이터가 날라가는 사태가 발생…
로직 문제인 줄 알았는데 알고 보니 "a 태그" 때문이었던 것
덕분에 a 태그와 Link 태그의 차이점을 크게 알았다.


<a 태그>

- 페이지를 전환할 때 a 태그의 href 속성을 사용하여, 새로운 페이지에서 'userState' 값을 초기화한다.
- 이는 페이지 이동 시 새로운 컴포넌트가 마운트되고 초기화되기 때문에 발생



<Link 태그>

- 페이지를 새로 불러오지 않고 (컴포넌트가 마운트되는 대신) 라우터가 컴포넌트를 변경하고 상태를 유지한다.
- 페이지 주소만 변경하여 상태는 초기화되지 않는다



메모메모…

728x90

'React' 카테고리의 다른 글

[React] ReactNode / ReactElement / JSX.Element 의 차이  (0) 2024.06.25