본문 바로가기

react2

[React] UseState는 렌더링 될 때 state를 변경해준다 js는 모든 코드가 기본적으로 비동기적으로 작동한다. 그래서 서버에서 데이터를 가져올 때 항상 async랑 await를 사용해서 비동기적으로 작동하도록 코드를 작성해야 한다. 어떤 라인에 await를 붙이면 그 아래 라인들은 이 라인이 실행될 때까지 기다렸다가 작동하게 된다. 그런데 await가 무용지물인 곳이 있었는데..! 그것이 바로 UseState이다. await를 사용하면 동기적으로 코드가 실행되는 것은 맞다. await setState()를 사용하면 setState가 실행된 후 아래 라인이 실행되긴 한다. 문제는 setState가 실행되는 것과, 실제로 state가 변경되는 것은 별개의 사건이라는 것이다. setState는 실행되는 순간 state를 바꿔야겠다! 하고 메모만 해둔다. 그리고 실제.. 2024. 1. 6.
[React 에러] Cannot read properties of undefined (reading 'get') 이렇게 CreateBoard.js에서 form 입력을 받고, 사용자가 제출 버튼을 누르면 그 다음 단계로 넘어가도록 구현하는 중이다. 이 과정에서 navigate를 사용하여 페이지 이동을 구현했다. 보통 form 제출에서는 navigate를 많이들 사용한다고 하길래! 그런데 이렇게 하면 서버에서 데이터를 못받아오고 자꾸 에러가 났다. 차라리 400번대나 500 에러가 뜨면 요청이 갔지만 중간에 문제가 있었구나... 인데 자꾸 이런 에러가 떠서 당황스러웠다. 그런데 콘솔 창을 잘 보니 그 이유를 찾을 수 있었다. CreateBoard에서 폼 입력을 받고, 제출 버튼을 누르면 CreateNetwork로 이동하는 구조이다. 두 과정에서 axios interceptor을 사용했는데 CreateBoard.js에서.. 2023. 8. 10.