TypeScript의 필수 속성에 대한 유형 별칭 또는 인터페이스의 모든 속성을 쉽게 만드는 방법은 무엇입니까?
3633 단어 typescript
type alias
또는 interface
의 모든 속성을 필수 속성으로 쉽게 만들려면 Required
유틸리티 유형을 사용하고 type alias
또는 interface
를 각괄호 기호( <>
).TL;DR
// a simple type
// with optional properties
type Person = {
name?: string;
age?: number;
};
// make all the properties in the
// `Person` type to be required
type RequiredPerson = Required<Person>;
// contents of the `RequiredPerson` type
/*
{
name: string;
age: number;
}
*/
예를 들어,
Person
유형을 갖는 name
라는 2개의 선택적 속성이 있는 string
라는 유형과 이와 같은 숫자 유형을 갖는 age
가 있다고 가정해 보겠습니다.// a simple type
// with optional properties
type Person = {
name?: string;
age?: number;
};
이제
Person
유형의 모든 속성을 필수로 만들기 위해 Required
유틸리티 유형을 사용하고 각괄호 기호( Person
)를 사용하여 첫 번째 유형 인수로 <>
인터페이스를 전달할 수 있습니다.다음과 같이 할 수 있습니다.
// a simple type
// with optional properties
type Person = {
name?: string;
age?: number;
};
// make all the properties in the
// `Person` type to be required
type RequiredPerson = Required<Person>;
// contents of the `RequiredPerson` type
/*
{
name: string;
age: number;
}
*/
이제
RequiredPerson
유형 위로 마우스를 가져가면 이제 모든 속성이 필요하다는 것을 알 수 있으며 이는 우리가 원하는 것입니다.codesandbox에 있는 위의 코드를 참조하십시오.
그게 다야 😃!
이 정보가 유용하다고 생각되면 자유롭게 공유하세요 😃.
Reference
이 문제에 관하여(TypeScript의 필수 속성에 대한 유형 별칭 또는 인터페이스의 모든 속성을 쉽게 만드는 방법은 무엇입니까?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/melvin2016/how-to-easily-make-every-property-in-a-type-alias-or-interface-to-required-properties-in-typescript-c08텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)