본문으로 건너뛰기
wooncloud

← 모든 태그

#react

8개의 글.

포커스 트랩 훅의 deps에 콜백을 두면 타이핑 중 포커스를 빼앗긴다
포커스 트랩 훅의 deps에 콜백을 두면 타이핑 중 포커스를 빼앗긴다
모달에 닫기 확인 가드를 넣었더니 타이핑할 때마다 포커스가 첫 입력칸으로 튀었습니다. effect deps 에 인라인 콜백이 들어 있던 포커스 트랩 훅을 ref 로 고친 과정입니다.
2026-10-20 · 6 min read
#react#accessibility#hooks#focus-trap
요청을 쪼갰는데 화면은 여전히 가장 느린 요청을 기다린다
요청을 쪼갰는데 화면은 여전히 가장 느린 요청을 기다린다
요청을 섹션별로 나눴는데도 합산 로딩 플래그 때문에 화면은 50초 뒤에야 바뀌었습니다. 섹션 단위 pending 판정과 TanStack Query v5 의 pending 함정을 정리했습니다.
2026-10-16 · 6 min read
#react#tanstack-query#frontend#loading-state
자동완성이 다시 안 뜬다 — 닫힘 상태를 값으로 저장했을 때
자동완성이 다시 안 뜬다 — 닫힘 상태를 값으로 저장했을 때
자동완성 닫힘 상태를 검색어 값으로 기억하면 지웠다 같은 값을 다시 입력했을 때(IME 수정 동작) 패널이 영영 안 열립니다. 값 대신 편집 횟수 카운터로 바꿔야 합니다.
2026-09-07 · 12 min read
#react#ime#frontend#상태관리
툴팁으로 감쌌더니 옆 요소가 밀려났다 — 래퍼가 가져가는 flex 성질
툴팁으로 감쌌더니 옆 요소가 밀려났다 — 래퍼가 가져가는 flex 성질
툴팁 같은 래퍼 컴포넌트가 부모의 flex 계산에 개입해 레이아웃을 깨뜨리는 문제를 해결하기 위해 래퍼의 flex 속성을 옵션으로 분리하고 레이아웃 설계 시 호출부의 영향력을 고려하는 방법을 제안합니다
2026-08-21 · 8 min read
#css#flexbox#react#컴포넌트설계
렌더 실패가 앱 밖으로 새는 이유 — 라이브러리가 document.body에 그릴 때
렌더 실패가 앱 밖으로 새는 이유 — 라이브러리가 document.body에 그릴 때
렌더 라이브러리가 실패 시 document.body에 만든 임시 div를 정리 직전에 throw해, catch로 예외를 삼켜도 화면에 잔재가 누적됩니다. 컨테이너를 직접 만들어 finally에서 제거해야 합니다.
2026-08-20 · 11 min read
#frontend#dom#react#testing
disabled 버튼에 툴팁이 안 뜨는 이유와 해결
disabled 버튼에 툴팁이 안 뜨는 이유와 해결
disabled 버튼은 포인터 이벤트를 차단해 툴팁 표시를 방해하므로 CSS의 pointer-events: none을 활용해 이벤트를 부모 요소로 전달하는 해결법과 함께 키보드 사용자를 위한 접근성 보완책을 제시합니다
2026-07-23 · 7 min read
#frontend#css#react#ux#accessibility
모바일 키보드가 모달을 가릴 때 — visualViewport + paddingBottom 한 방
모바일 키보드가 모달을 가릴 때 — visualViewport + paddingBottom 한 방
iOS Safari 는 키보드가 떠도 레이아웃 뷰포트를 줄이지 않아 모달이 키보드 뒤에 가려지는데, visualViewport 로 가린 높이를 구해 padding-bottom 에 더하면 정렬을 안 바꾸고도 해결됩니다.
2026-06-11 · 7 min read
#frontend#css#react#mobile#visualviewport
Next.js App Router 캐싱 4계층 완전정복
Next.js App Router 캐싱 4계층 완전정복
Next.js App Router 캐싱은 4계층으로 나뉘며, cookies()·headers()·no-store 하나만 써도 라우트가 동적이 되어 Full Route Cache 가 꺼집니다.
2026-06-07 · 21 min read
#nextjs#react#performance#frontend