728x90 DEV71 [React] useRef 이해하기 useRef가 뭘까? 자바스크립트를 사용하게 되면, 특정 DOM을 선택해줘야 되는 경우가 있습니다. 그래서 자바스크립트에서는 getElementById나 querySelector를 사용해서 DOM을 직접 선택해줍니다. 리액트에서도 이와 같이 DOM을 선택하야 되는 경우가 있습니다. 외부 라이브러리를 사용하거나, 특정 엘리먼트의 크기를 가져오거나, 스크롤바의 위치를 가져와야 되는 경우가 있습니다. 이럴 때 리액트에서는 ref 라는 친구를 사용해주게 됩니다. ref 라는 친구는 referece의 줄임말이고 이름만 참고해서 보면 DOM 요소에 이름표를 붙여서 참고하겠다라는 의미인 것 같습니다. Ref는 일반객체이고 console.log로 찍어보게 되면 {current:null}이라는 객체가 나오고 이 객체를 .. 2024. 2. 2. [React Query] axios(API) + react-query(Custom Hook) + 호출 방식으로 사용하는 이유 처음 적용하게 된 이유 윈터데브캠프 2기를 하면서 진행했던 프로젝트에서 처음으로 적용을 했었습니다. 함께 했던 팀원 분께서 원티드 프리온보딩 강의 중에 해당 방식으로 코드를 짜는 분의 GitHub를 참고해서 해보면 어떨까라고 제안을 해주셨고, 해당 방식대로 코드를 짜보려고 해보았습니다. 당시에 위와 같이 axios의 api별 호출 → react query를 활용한 hook문 → hook을 호출 하는 방식으로 진행을 하였습니다. 이렇게 코드를 짜던 제 당시 상황은 “JavaScript도 완벽하게 모르는데 내가 TypeScript를 할 수 있나?”에 “React Query는 api 호출하는데 쓰는 친구인가?” 정도 였습니다. 지금 돌아봤을 때 팀원 분이 정말 잘할 수 있도록 끌어올려주셨다고 생각합니다. 이런.. 2024. 2. 2. [우아콘] 프론트엔드 상태관리 실전편을 보고 나서 상태관리 → 상태와 관리가 합쳐진 말 State: A Component’s Memory → 컴포넌트의 메모리가 상태이다 최근 리액트 개발에서 컴포넌트가 중심에 있음. → 어떤 팝업을 화면에 띄울지 말지, 주문/배달의 진행은 어떠한지 상태는 공통으로 그리고 단일로도 사용되어질 수 있는 개념임. 상태관리가 등장한지도 얼마 안됐는데 한계점도 있음 상태관리 방법의 변화 Redux로 상태관리를 풀고 있었고 → mobX등으로 해결을 해나가려고 했음 여전히 코드가 너무 많다는 문제가 있었지만 해결할 만한 방법 X → Post 상태관리, 원격 상태관리가 나옴 리덕스, mobx에는 스토어가 큰 것도 있지만 상태관리보다 API 호출 코드가 더 많다는 문제가 있음. Mobx + React-query 를 쓰니 스토어는 단순해.. 2024. 1. 30. [React] GDSC 2차 프로젝트 CI/CD 1차 프로젝트 때 같은 팀 프론트 분이 하셨던 github 레포지토리 배포(?)를 이번 프로젝트 하면서 적용해보고 싶어져서 새벽에 프로젝트 시작하면서 하는 김에 같이 해보았다. 헛짓을 좀 많이 해서 오래 걸리긴 했지만 정상적으로 일단 돌아가는 걸 확인해서 했는 걸 정리해보려 한다. 지난 글에서 했던 프로젝트 세팅에 이어서 작업을 해주었는데, github 레포지토리에 아직 연결을 안해둬서 연결 작업 부터 해주었다. echo "# test" >> README.md git init git add README.md git commit -m "first commit" git branch -M main git remote add origin https://github.com/krokerdile/xxx.git git.. 2023. 7. 21. [React] GDSC 2차 프로젝트 - 개발환경 세팅 활동 중에 있는 GDSC 2차 프로젝트를 진행 하면서 React + TypeScript + Vite로 진행 하는 과정을 대충이나마 정리해보려고 한다. vite를 통해서 리액트 프로젝트를 시작하는 방법이 여러 개가 있겠지만 이번에는 "yarn create vite"로 시작을 해보았다. 이전에는 아마 typescript를 지정해서 만들어주는 식으로 해주는 걸 주로 사용했었던 거 같은데, 보통은 이렇게 생성을 하는 것 같다. 기본 package.json을 바탕으로 라이브러리를 설치할 수 있도록 "yarn install"을 해주면 일단 프로젝트 생성은 끝이다. 짤막하게 하면서 계속 글을 올려볼까 하는데 언제 올릴지는.. 😅 2023. 7. 21. [JS 공부하기] 1일차 - 프로그래머스 LV.0 1학기가 끝나면 코테, CS 공부를 열심히 해야지라고 생각하고 인도 온지 벌써 2주차인데 공부보다는 운동을 더 열심히 하는 것 같다😅 같이 온 팀원을 본받아서 조금씩 시작해보려고 몸풀기로 JavaScript공부를 시작했다. 일단은 공식문서 안보고 문제 푸는 정도로 시작을 해서 프로그래머스 레벨 0 문제를 좀 풀어봤는데 생각보다는 나쁘지 않게 풀리는 것 같다. 매일 조금씩이라도 문제도 풀고 1학기 때 수강했던 수업들 내용도 정리해둬야 될 것 같다. CS(컴퓨터망, 컴퓨터학개론) 지식관련된 수업을 많이 들어서 한번 정리해두면 다시 보는데 도움이 될 거 같다. 두 수의 곱 function solution(num1, num2) { var answer = 0; answer = num1 * num2; return .. 2023. 7. 15. 이전 1 2 3 4 5 6 7 8 ··· 12 다음 728x90