as const의 용도
·
TS
타스 입문자인 내 머리로는 아무리 봐도 이해가 안되는 개념을 gemini가 잘 정리해줘서 기록해보려고 한다. 기본 개념 타입스크립트에서 `as const`는 값의 타입을 최대한 좁게 추론하도록 지시하는 타입 단언(type assertion)의 한 형태입니다. 즉, 변하지 않는 상수로 취급하여 더 구체적인 타입을 얻고자 할 때 사용됩니다. 한 줄 요약: `as const`는 타입을 최대한 좁게 추론하게 만든다. as const의 존재 이유와 용도1. 리터럴 타입 추론 (Literal Type Inference)일반적으로 타입스크립트는 변수에 할당되는 값의 타입을 추론할 때, 가능한 한 넓은 타입을 부여하는 경향이 있습니다. 예를 들어, let x = 'hello';라고 하면 x의 타입은 'hello'가 ..
RefObject<T> 타입이란?
·
TS
비제어 방식 폼에 ts를 적용하면서, formRef에 `RefObject` 타입을 적용하게 되었다.const useForm = ( formRef: RefObject,) => { ... }다른 타입들보다는 조금 낯설어서 짧게 짚고 넘어가려고 한다. 정의`RefObject`는 제네릭 타입의 Ref 객체 타입으로,RefObject 타입React Ref 객체 타입제네릭 RefObject이렇게 3가지 명칭으로 부른다. 개인적으로는 'RefObject 타입'이라고 부르는 게 가장 편하고 직관적인 것 같다. 특징`useRef(null)`로 생성된 리액트 ref 객체에 적용하는 타입읽기 전용`.current`에 접근 가능
CSSInterpolation 타입이란?
·
TS
Emotion으로 작업하다보면 `CSSInterpolation`이라는 타입을 마주치게 된다.이름부터 낯선 이 타입은 무엇이며, 어떻게 생겨나게 되었고, 어떻게 쓰이는 것일까? CSSInterpolation먼저 프로그래밍에서 `Interpolation`은 `값을 중간에 삽입하거나 평가해서 넣는 것`을 말한다.Emotion에서는 스타일 정의 안에 값(문자열, 함수, 객체 등)을 삽입할 수 있는데, 이 전체 삽입 가능한 타입들의 모음을 `CSSInterpolation`이라고 부르는 것이다. CSSInterpolation은 Emotion의 스타일 관련 값(`CSSObject`, `SerializedStyles`, `false`, `null` 등)을 모두 포괄하는 넓은 범위의 타입으로, 간단한 스타일 객체를 반환..