일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- async/await
- 투포인터
- recoil
- React
- ESlint
- dfs
- CORS
- TS
- 이분 검색
- 호이스팅
- autosize
- CI/CD
- Cypress
- 인터섹션
- 공변성
- useAppDispatch
- 무한 스크롤
- app router
- SSR
- 타입 좁히기
- webpack
- Promise
- RTK Query
- tailwind
- 결정 알고리즘
- 반공변성
- Jest
- 태그된 유니온
- map
- 리터럴 타입
- Today
- Total
목록2025/03 (3)
짧은코딩
useState의 동작 원리useState는 동기, 하지만 비동기처럼 동작원리state의 변경useState는 queue에 state 업데이트 쌓임(같은 값이 여러 개면 최적화 되어 사라질 수 있음)효율성을 위해 event Loop에서 state 업데이트 요청들을 batching으로 한번에 처리(16ms동안 변경된 상태 값들을 하나로 묶어 처리)useState는 const로 선언하기 때문에 불변성에 의 값을 변경 불가따라서 리렌더링이 발생하고 화면에 변경된 state가 보임 => 따라서 비동기처럼 동작하는 것 처럼 보임함수형 업데이트-문제점 코드const [count, setcount] = useState(0);setCount(count + 1);setCount(count + 1);//count는 1이 ..
제어 컴포넌트폼 데이터가 React 컴포넌트의 state에 의해 제어상태(state)와 입력 필드가 동기화-예시 코드function ControlledInput() { const [value, setValue] = useState(''); return ( setValue(e.target.value)} /> );}상태 변경 시 컴포넌트 리렌더링반응형 상태 관리비제어 컴포넌트DOM 자체에서 폼 데이터를 다룸ref를 사용해 DOM 요소에 직접 접근-예시 코드function UncontrolledInput() { const inputRef = useRef(null); const handleSubmit = () => { console.log(inputRef.current.val..

"기존에 폴더 구조를 짤 때는 명확한 기준을 잡지 않고 폴더 구조를 짰다. 기준이 없으면 매번 행동이 달라지게 된다."이 말에 굉장히 공감했다. 그렇기에 FSD 폴더 구조를 공부해 보고자 이 글을 작성한다.FSD의 구조FSD에서는 폴더 구조는 Layers, Slices, Segments로 3 depths를 사용한다.SlicesSlices로 나눈 것은 "도메인 주도 설계"이다.블로그라고 치면 post 안에 comment가 있는게 아닌가 싶지만, 최대한 분리하는 것이 좋다.Segmentsui는 화면담당model은 데이터 담당api는 서버로 부터 데이터 가져오는 담당Layers상위 폴더에서만 하위 폴더를 import 할 수 있다.app에서는 모든 폴더를 import 가능하다는 의미shared에서는 아무 폴더도..