얼마 전 면접에서 질문을 받은 기억이 나서 리마인드 할 겸 정리한다. React에서 컴포넌트를 다룰 때, 이를 “Controlled” 및 “Uncontrolled”로 나누어 생각할 수 있다. 두 방식 간의 주요 차이점을 이해하는 것은 React와 상태 관리를 제대로 다루기 위해 중요하다.
일상 기록
주제에 제한을 두지 않고 제 일상에 대해 기록합니다.
둘 다 프로덕트에서 실제로 써보고 싶을 정도로 매력적이다.
다만 취직을 고려하고 있는 사람은 프론트는 리액트를, 백엔드는 자바를 배우길 추천한다. 현실이 그런걸 어쩌겠…
구글이 도메인 등록 서비스를 종료한다고 한다^1. 공유기나 NAS에서 구글 DDNS를 지원해주고 있어서 이용하고 있었는데, 옮겨야 하는 명분이 생겼다. Porkbun과 Cloudflare 중에서 고민을 했는데, Cloudflare가 무료로 이용할 수 있는 여러 부가 서비스가 있어서 Cloudflare로 옮겼다.
깊은 복사는 항상 라이브러리를 이용해서 썼었다. 최근에 면접에서 깊은 복사에 대한 질문을 받고 직접 구현해보는 라이브 코딩 시간을 가졌었는데 나는 recursion을 이용해서 구현했었다. Recursion 외에도 방법이 존재하기에 생각나는 김에 정리해본다.
레디쉬에서도 재택근무를 할 수 있어서 가족과 보낼 시간은 많았다. 하지만 근무 시간에는 일에 몰입했었기에 최근의 비자발적 실업 상태에서는 오롯이 가족과 시간을 함께 보낼 수 있어서 좋다. 와이프를 도와 첫째와 둘째의 육아를 하다보면 하루가 금방 가곤 한다.
Oracle Cloud Infrastructure(OCI)에서 Docker를 사용하다보면 docker-compose
명령어를 매번 입력해야하는 불편함이 있습니다. 이를 해결하기 위해 dc
라는 alias를 설정해보겠습니다.
최근 블로그 배포를 netlify에서 vercel로 변경하였다. 둘 다 비슷한 서비스고 장점과 단점이 있는데, google analytics처럼 audience를 보여주는게 좋아보여서 변경했다. Core web vital도 보여주는데 이건 netlify에서도 lighthouse 플러그인으로 확인할 수 있다.
Type 'unknown' is not assignable to type
오류는 TypeScript에서 ‘unknown’ 타입의 값을 다른, 더 구체적인 타입의 변수나 속성에 할당하려고 할 때 일반적으로 발생한다. react-query 컨텍스트에서 이 오류는 쿼리에서 반환되는 데이터를 처리할 때 발생하며, TypeScript가 데이터의 타입을 올바르게 추론할 수 없는 경우에 발생한다.
Material-UI의 TableCell 컴포넌트를 사용하고 component prop을 “th” 또는 “td”로 지정했을 때 “validateDOMNesting” 오류가 발생했다.