TypeScript
15 - Alias et litterals

Litterals et alternatives

Les litteraux sont des types qui permettent de définir des valeurs spécifiques. Par exmple :

firstProgrammingPhrase: "Hello, World!";

Les litteraux

Les litteraux sont des types qui permettent de définir des valeurs spécifiques. Ils sont souvent utilisés pour définir des valeurs constantes ou des valeurs spécifiques à un domaine.

Ils peuvent etre utilisé comme des options discriminantes.

type Direction = "left" | "right" | "up" | "down";
 
function move(direction: Direction) {
    console.log(`Moving ${direction}`);
}
 

Autocompletion

type CSSValue = number | string;

Exemples

Voici quelques exemples interessants de la chaine YouTube "basarat" (opens in a new tab).

CSSValue

type CSSValue = number | `${number}px` | `${number}em` | `${number}rem`;
 
function size(input: CSSValue) {
  return typeof input === "number" ? `${input}px` : input;
}
 
size(12); // ✅
size("12rem"); // ✅
size("12pixel"); // ❌

Classes names

type Size = "small" | "medium" | "large";
type Color = "primary" | "secondary";
type Style = `${Size}-${Color}`;
 
function applyStle(style: Style) {
  return style;
}
 
applyStle("small-primary"); // ✅
applyStle("medium-secondary"); // ✅
applyStle("secondary-medium"); // ❌

Sources