TypeScript의 공용체 유형에서 null 또는 정의되지 않은 값을 제거하여 새 유형을 쉽게 만드는 방법은 무엇입니까?

3879 단어 typescript
Originally posted here!

TypeScript의 공용체 유형에서 undefinednull 값을 모두 제거하여 새 유형을 쉽게 만들기 위해 NonNullable 유틸리티 유형을 사용하고 공용체 유형을 전달하여 nullundefined를 다음과 같이 제거할 수 있습니다. 첫 번째 형식 인수입니다.

TL;DR




// a simple union type
type MyType = "Hi" | "Hello" | null | undefined;

// make a new type by excluding
// the `null` and `undefined` values
// from the `MyType` type
// using the `NonNullable` utility type
type RevisedType = NonNullable<MyType>; // "Hi" | "Hello"


예를 들어 다음과 같이 nullundefined 값을 포함하는 일부 값으로 구성된 공용체 유형이 있다고 가정해 보겠습니다.

// a simple union type
type MyType = "Hi" | "Hello" | null | undefined;


이제 null 유형에서 undefined , MyType 값을 제외하여 새 유형을 만들기 위해 NonNullable 유틸리티 유형을 사용하고 MyType 유형을 첫 번째 유형 인수로 전달할 수 있습니다.

다음과 같이 할 수 있습니다.

// a simple union type
type MyType = "Hi" | "Hello" | null | undefined;

// make a new type by excluding
// the `null` and `undefined` values
// from the `MyType` type
// using the `NonNullable` utility type
type RevisedType = NonNullable<MyType>; // "Hi" | "Hello"


위의 코드에서 알 수 있듯이 nullundefined 값은 RevisedType 유형에 없습니다.

TypeScript의 공용체 유형에서 null이 허용되지 않는 값을 제거하여 새 유형을 성공적으로 만들었습니다. 예이 🥳!

codesandbox에 있는 위의 코드를 참조하십시오.

그게 다야 😃!

이 정보가 유용하다고 생각되면 자유롭게 공유하세요 😃.

좋은 웹페이지 즐겨찾기