Using the Built-in Distributive Conditional Types
Nome | Descrição | Exemplo |
|---|---|---|
Exclude<T, U> | Exclui de |
|
Extract<T, U> | Seleciona de |
|
NonNullable | Exclui |
|
Exemplos práticos
Em resumo
Esses tipos embutidos são extremamente úteis para manipular uniões de tipos:
Exclude → remove tipos indesejados.
Extract → mantém apenas os tipos desejados.
NonNullable → garante que
nulleundefinednão estejam presentes.
Eles simplificam tarefas comuns que, sem eles, exigiriam a criação de tipos condicionais personalizados.
Comparação: Tipos embutidos vs. tipos condicionais manuais
Tipo embutido | Equivalente manual com tipo condicional | Exemplo de uso | Resultado |
|---|---|---|---|
Exclude<T, U> |
|
|
|
Extract<T, U> |
|
|
|
NonNullable |
|
|
|
Explicação
Exclude: remove de
Tos tipos que também estão emUExtract: mantém apenas os tipos de
Tque também estão emUNonNullable: elimina
nulleundefineddeT
Esses tipos embutidos são atalhos convenientes que evitam escrever manualmente expressões condicionais repetitivas