모바일 앱에서 emotion 도입 후 실제 어려웠던 점 중심
졸업 프로젝트로 리액트 네이티브 기반 모바일 앱을 3개월 동안 만들었는데, 그때 처음 emotion을 사용해 보았습니다. 처음에는 CSS-in-JS라 익숙해지는 데 2주 정도 걸렸고, styled 컴포넌트에 props를 넘겨서 조건부 스타일링을 하는 패턴이 처음에는 복잡하게 느껴졌습니다. 화면이 15개 정도 되었는데 테마 색상을 전역으로 관리하려다가 프로바이더 계층이 꼬이는 실수를 한 번 경험했습니다. 그 이후로는 테마 토큰을 하나의 파일에 모아두고 각 컴포넌트에서 임포트하는 방식으로 바꿨더니 훨씬 관리가 편해졌습니다. vanilla-extract는 사이드 프로젝트로 데스크탑 대시보드를 만들 때 사용해 보았는데, 빌드 타임에 CSS가 생성된다는 점이 모바일 대비 체감 속도 차이로 나타났습니다. 두 라이브러리를 함께 사용하다 보니 런타임 vs 정적 생성의 트레이드오프를 직접 느낄 수 있었던 경험이었습니다.