# Utility Type
utility type in typescript
Pick The Pick utility type in TypeScript is used to create a new type by selecting only a subset of properties from an existing type. In this case, TodoCreateInterface is defined as a new type that includes only the content property from the Todo type. Omit In this example, the Omit utility type is used to create a new type called TodoCreateInterface that has all the properties of the Todo interface except for the content property.

TypeScript Type Manipulation
https://www.typescriptlang.org/docs/handbook/2/types-from-types.html Generics - Types which take parameters Keyof Type Operator - Using the keyof operator to create new types Typeof Type Operator - Using the typeof operator to create new types Indexed Access Types - Using Type['a'] syntax to access a subset of a type Conditional Types - Types which act like if statements in the type system Mapped Types - Creating types by mapping each property in an existing type Template Li

TIL[10일차].Utility-Type, Graphql-codegen
어제 복습! 수정했을때 디폴트값 넣기, 빈값 제외하고 보내기 2가지 배웠습니다. 수정하기 1) defaultValues 해당 폴더에서 데이터를 가져와야한다. 등록 상세 수정페이지 컨테이너/프리젠터를 등록,수정페이지에서 import해야하는데 수정 페이지에서 useQuery로 넘서 data={data) props로 넘겨준다. 작성자 인풋에 readOnly={true} 가 들어오면 인풋창이 막히게 됨(입력불가) readOnly={!!props.data?.fetchBoard.writer} !! 이게 뭘까용 false/true느낌인데 정확히 false/true로 바꿔주기 위해! 이중부정연산자라고 하기도 함 ?? 도 있다. && 앞에것이 참이면 뒤에거 보여줘 || 앞에것이 거짓이면 뒤에거 보여줘 ?? 앞에것이 없으면 뒤에거 보여줘 없다는건 null/undifined를 말합니다. nullish coalescing이라고 함(널리시 코알레싱) container에서 수정한 내용이 없
유틸리티 타입
서론 타입 스크립트는 전역에서 사용 가능한, 유용한 타입들을 만들어서, '유틸리티 타입'이라는 이름으로 제공한다. 유틸리티 타입을, 사용자가 만든 타입과 조합하면, 다양한 타입을 만들 수 있다. 자세히 살펴보자. 본론 Partial 의 모든 프로퍼티를, optional 프로퍼티로 바꾼다. 객체 타입의 모든 프로퍼티의 끝에 '?'를 붙이는 것과, 동일한 결과를 낳는다. Required 객체 타입의 모든 프로퍼티를, required 프로퍼티로 만든다. 이는, 모든 optional 프로퍼티의 끝에 있는, '?'를 지우는 것과 동일한 결과를 낳는다. Readonly 객체 타입의 모든 프로퍼티를, readonly 프로퍼티로 만든다. 이는, 프로퍼티에 재할당하지 못하게 만든다. Record 여기에서 는, 문자열, 숫자, 문자열 리터럴 유니온 혹은 숫자 리터럴 유니온일
타입스크립트 정리
타입스크립트로 계산기를 만들어보며, 배웠던 점을 정리하고자 한다. type assertion 타입스크립트는, 타입을 추론한다. 이때, 우리가 타입을 더 잘 알고 있다고 판단이 들면, type assertion을 통해, 이를 알릴 수 있다. 타입을 표명하면, 타입스크립트가 추론한 타입이 아닌, 사용자가 표명한 타입을 받아들인다. 이때 실제로 해당 타입이 아니더라도, 타입스크립트가 받아들이기 때문에, 아주 안전한 방법은 아니다. 사용법: value as type index signature 객체 타입을 생성할 때, 타입의 프로퍼티들을 미리 다 알 수 없지만, 프로퍼티들이 어떤 형태를 가져야 하는지는 알 수도 있다. 이때, index signature를 사용하여, 형태를 알릴 수 있다. index signature 파라미터의 타입은 string, number, symbol 혹은 template literal일 수 있다. 사용법: [signature_parameter:

유틸리티타입(utility type)
1. key of keyof를 이용해서 interface 타입을 유니온으로 받아올 수 있다. 2. partial`` property를 모두 option으로 바꿈 타입 부분을 Partial으로 감싸줘서 사용한다. 이 모습은 다음과 같다. 3. Required`` 모두 필수 property로 바꿔준다. 
Day 10) 1. API로 받는 데이터 타입은? => garaphql-codegen 2. 유틸리티 타입도 배워보자! => Utility-Type 3. 협업하는데 규칙이 있어야지! => Eslint / Prettier / Husky
비밀번호는 보안상 불러오지 않고 보내기만 하면 알아서 틀렸을 시 백엔드에서 에러 처리 해줌 return = 함수의 종료 early exit 틀린거 먼저 종료하기 리팩토링 패턴 alert("asdf confirm("입력") prompt("비밀번호 입력해주세요") const mypassword = prompt("비밀번호 입력") mypassword 
코드캠프 FE 10일차 - TIL(Graphql-codegen,Utilty type,Eslint/Prettier)
📔 학습목표 API로 받는 데이터 타입은 ? >> graphql-codegen 유틸리티 타입 >> Utility type 협업하는데 규칙이 있어야지 >> Eslint / Prettier / Husky > 지난 시간 수업 코드리뷰 게시글 수정할 때 비밀번호를 입력해야 수정이 된다 작성자는 백엔드에서 수정 못하도록 막아놈 백엔드에서 데이터를 비교 - 비밀번호 확인하는 과정(보안목적상) db로 정보요청 -> 맞으면 게시글 수정 틀리면 error 보냄 BoardWrite container 데이터를 한번 더 보내야 함 그래야 디폴트 값이 넘어감? 맞나.... 암튼... 같은 컴포넌트인데 수정페이지에는 값이 있고 등록페이지에는 없는 이유? props.data가 있으면 props.data.fetchBoard.~를 보여주고 없으면 빈 값을 보여준다

어제 뭐했니? #17
[셀프 스터디: 검색엔진 API 구현 ](https://abstracted-rutabaga-798.notion.site/31st-4-25-TIL-2f8ad3c5f334417b8f5210e987901750)CRUD, Analyzer, Autocomplete MicroService Jest/TDD, Generic Type/Utility Type
유틸리티 타입
Partial T의 모든 프로퍼티를 선택적으로 만드는 타입을 구성합니다 이 유틸리티는 주어진 타입의 모든 하위 집합을 나타내는 타입을 반환한다 Readonly T의 모든 프로퍼티를 읽기 전용(readonly)으로 설정한 타입을 구성한다 생성된 타입의 프로퍼티는 재할당할 수 없다 이 유틸리티는 런타임에 실패할 할당 표현식을 나타낼 때 유용하다 Record 타입 T의 프로퍼티 집합 K로 타입을 구성한다 이 유틸리트는 타입의 프로퍼티들을 다른 타입으로 매핑시키는데 사용할 수 있디 Pick T에서 프로퍼티 K의 집합을 선택해 타입을 구성한다 Omit T에서 모든 프로퍼티를 선택한 다음 K를 제거한 타입을 구성한다 Exclude T에서
아직도 써먹기 힘든 TS - 유틸리티 타입 / Partial
TS에는 타입 적용에 편리한 기능을 미리 정의해논 '유틸리티 타입' 이란게 있다. 이걸 잘 쓰면 부분 추출, 부분 제거, 전체 속성 변경 등 손가락을 덜 혹사시키면서 코딩이 가능하다. 잘 써먹을 수 있도록 유틸리티 타입을 공부 및 모사해보자 👊 목차 유틸리티 타입 종류 Partial TS 지식 PartialPerson 만들기 PartialPerson에 제네릭 적용하기 1. 유틸리티 타입 종류 타입스크립트에서 만들어 논 타입 변환을 용이하게 도와주는 도구! 유틸리티 타입은 어떤게 있을까? Partial, Required, ReadOnly, ... 공식문서에서 안내되고 있는 건 총 20개다. 많긴한데 Partial부터 차근차근 분석해보자! > 참고: [유틸리티 타입 - 공식문서](https://www.typescri