2026.08.06Tanstack Query와 mutation context유용한 도구들#tanstack-query#디버깅좋고 나쁨을 떠나서, 개발자는 처음 라이브러리를 접했을 때 익힌 문법과 사용 방식을 관성처럼 유지하는 것 같다. 내가 처음 개발을 배우던 시절에 리액트 쿼리는 막 이름을 탠스택 쿼리로 바꾸면서 5버전을 냈다. 부트캠프에서는 4버전을 권장했지만, 딱히 강요하지는 않았고, 그리하여 나를 포…
2026.05.26차트는 멈췄는데 윈도우가 움직인다TypescriptReact#디버깅#hooks상황 어느날 서비스를 살펴보시던 팀장님께서 이런 말씀을 slack에 남기셨다. 진호님, 예측 차트에서 zoom을 계속하면 어느 순간 라인 차트가 아니라 단일 스캐터 차트처럼 보이는 데, 이거 수정하면 좋을 거 같아요. 어느정도 zoom을 하면 그 이후로는 zoom이 안 되도록 할 수 없…
2025.09.29Nullish Coalescing AssignmentJavascript#디버깅최근 Grunfeld를 사용해본 지인으로부터 다소 기묘한 버그 리포트를 전달받았다. 모달의 기본 동작을 전역적으로 설정할 수 있도록 제공한 GrunfeldProvider의 options 프로퍼티가, 특정 상황에서 기대와 전혀 다른 방식으로 동작한다는 내용이었다. 사용자는 단순히 defa…
2025.06.05Next.js 데이터 캐시와 크롬 개발자 도구Next.js#cache#chrome-devtools#디버깅상황 나는 page router를 좋아하지만, 이번에는 여러 사정이 있어서 app router를 쓰게 되었다. 이왕 쓰게 된 김에 이런 저런 기능을 몽땅 활용할 생각이었다. 가장 기대하던 기능은 데이터 캐싱이었는데, 가능한 많은 걸 캐싱해두면 랜더링 완료 시점을 한참 일찍 앞당길 수 있…
2025.04.06재귀 조건부 타입에서의 추론 컨텍스트 손실Typescript#recursive#디버깅타입스크립트에서는 조건부 타입의 분배 과정에서도 타입 추론 컨텍스트가 유지된다. 이 특성 덕분에 단순한 분기 수준을 넘어, 상당히 복잡한 조건부 타입에서도 개발자가 의도한 방향으로 타입 추론을 유도할 수 있다. 실제로 이러한 특성은 고급 유틸리티 타입을 설계할 때 매우 강력한 도구로 작…
2025.01.22미들웨어 조합 구조에서의 unique symbol 활용기JavascriptTypescript#디버깅요즘 다른 전역 상태 라이브러리 대신 caro-kann 3 버전을 적극적으로 사용하고 있다. 여러 기능을 미들웨어 단위로 분리할 수 있어 번들 크기를 700B대까지 줄일 수 있었고, zustand, useReducer, useState 스타일을 상황에 따라 선택할 수 있다는 점도 다른…
2024.12.13thisJavascript#decorator#디버깅#metaprogramming내가 혼자 개발하고 있는 onef에 댓글 기능을 추가하기로 했다. 댓글 작성 기능을 구현한 뒤 수정 기능이 필요하다는 사실을 깨달았을 때, 처음 든 생각은 “로직은 거의 같고 메서드만 바꾸면 되겠네”였다. 실제로 댓글 작성과 수정은 HTTP 메서드만 post와 put으로 다를 뿐, 요청…
2024.12.07라이브러리를 죽여버릴 수야 없겠지만Nest.js#jest#디버깅#configmodule+1 more categories or tags상황 Nest.js 서버에서 jest를 사용한 테스트 코드를 작성하고 있었다. 평소에는 아래와 같이 ConfigService를 모의하여 configService.get으로 환경 변수를 처리했다. 그런데 이런 방식이 마음에 들지 않았다. 가장 큰 이유는 필요한 문자열이 하드코딩 되어있어…
2024.09.05에러도 테크닉이 될 수 있다TypescriptReact#component#디버깅상황 Button과 Link 및 여러 컴포넌트를 인자로 받아서 통일된 스타일을 처리해주는 Clickable 컴포넌트를 만들고 난 직후의 일이다. 로그인 페이지에서 Clickable 컴포넌트가 문제 없이 동작하는 걸 확인한 뒤 코드를 커밋했고, github action이 동작하며 라이브…
2024.07.13오직 크롬에서만 발생하는 요청 문제#elb#networking#aws#디버깅+1 more categories or tags이번 에러 케이스에는 서술 트릭이 존재한다. 상황 나는 onef라는 이름의 풀스택 프로젝트를 혼자서 진행하고 있다. AWS로 배포하는 데 익숙해져서, 이번에도 AWS를 통해 서비스를 배포하려고 했다. 늘 그렇듯 VPC를 하나 만들고 거기에 두 개의 서브넷을 만들었다. 퍼블릭 서브넷에는…
2024.02.03React Query와 AXIOSNext.js#serialization#tanstack-query#디버깅+1 more categories or tags상황 서버 상태관리를 React Query로 관리하기 시작하면서 기존에 fetch로 만들었던 리퀘스트 함수들을 AXIOS로 싹 갈아 엎기로 했다. AXIOS 자체가 러닝 커브가 낮은 편이라 갈아 엎는 작업 자체는 금방 끝났다. 그런데 npm run dev를 때리자 getServerSid…
2024.02.03tailwind config와 남의 코드 갖다 쓰기ReactWeb Platform#tailwindcss#css+1 more categories or tags상황 진행중인 프로젝트에서 기존에 사용하던 module css가 아닌 tailwind를 사용하기로 결정되었다. 작업 빨리 쳐내야 할 때 클래스 검색하는 거로 시간을 쓰는 게 싫어서 공식문서도 읽고 카카오FE의 사용 후기도 읽어보면서 이것저것 테스트해보는 시간을 가지고 있었다. tailw…