
Frontend
TypeScript — corriger les erreurs courantes
Exemples ciblés pour traiter undefined, unknown, les objets, les unions et les fonctions asynchrones avec un typage strict.
18commandesMis à jour le7 septembre 2026NiveauIntermédiaire
Aucune commande ne correspond à ce choix et à votre recherche.
Quel message d’erreur ?
| Message ou code | Point d’entrée |
|---|---|
TS2322 / TS2345 : type non assignable |
Vérifier le type attendu et réduire l’union avec typeof |
Valeur possiblement null ou undefined |
Vérification explicite, ?. et valeur de repli avec ?? |
TS18046 : valeur unknown |
Garde de type ou instanceof Error avant d’accéder aux propriétés |
TS7053 : clé incompatible avec l’objet |
keyof ou dictionnaire qui prévoit les clés absentes |
Propriété absente sur une Promise |
Attendre le résultat avec await |
Tableau inféré en never[] |
Déclarer le type des éléments dès la création |
Exemples indépendants, prévus pour TypeScript 4.9+ en mode strict, avec les bibliothèques ES2015 ou ultérieures. Intégrez les fragments de configuration au tsconfig.json existant.
| À retenir | Pourquoi |
|---|---|
Valider les données d’une API ou de JSON.parse |
Les types ne vérifient rien à l’exécution ; le JSON peut aussi être mal formé |
Éviter any, ! ou as Type pour masquer une erreur |
Ils ne corrigent pas la donnée reçue |
| Tester précisément les valeurs absentes | if (valeur) écarte aussi 0, false et "" |
| Vérifier les accès et propriétés optionnelles | noUncheckedIndexedAccess et exactOptionalPropertyTypes complètent strict, sans être activés par lui |
Après correction, lancez le contrôle de types du projet et ses tests. Pour Astro, Vue ou Svelte, utilisez aussi le vérificateur du framework.
Vérifier le projet
3 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
tsc --noEmitWindows · macOS · Linux | Contrôler le projet avec le TypeScript déjà installé. npm exec peut proposer une installation si le binaire manque : annuler et installer les dépendances du projet. | npm exec -- tsc --noEmit -p tsconfig.json | Sûr |
tsc --showConfigWindows · macOS · Linux | Afficher la configuration effective, y compris les options héritées. | npm exec -- tsc --showConfig -p tsconfig.json | Sûr |
strictWindows · macOS · Linux | Base conseillée pour un nouveau projet. Dans un projet existant, planifier les corrections et conserver les options du framework. | { "compilerOptions": { "strict": true, "noEmit": true } } | Sûr |
Valeurs absentes et erreurs
4 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
paramètre optionnelWindows · macOS · Linux | Vérifier undefined avant une opération qui exige un nombre. Éviter un test de vérité si 0 est valide. | | Sûr |
?. et ??Windows · macOS · Linux | Accéder à une propriété optionnelle avec une valeur de repli ; ?? préserve 0, false et la chaîne vide. | | Sûr |
Array.findWindows · macOS · Linux | Le résultat peut être undefined même si le tableau contient des éléments. | | Sûr |
catch et unknownWindows · macOS · Linux | Une exception peut être une chaîne ou un autre objet : vérifier avant de lire message. | | Sûr |
Valider les données reçues
3 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
typeofWindows · macOS · Linux | Réduire une union avant d’utiliser une méthode propre à un type. | | Sûr |
unknown et garde de typeWindows · macOS · Linux | Contrôler tous les champs utiles avant de traiter une donnée externe comme User ; un prédicat incorrect tromperait le compilateur. | | Sûr |
JSON.parse vers unknownWindows · macOS · Linux | Parser le JSON puis valider la structure. Un JSON syntaxiquement valide peut avoir une forme incorrecte. | | Sûr |
Objets, clés et tableaux
5 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
keyofWindows · macOS · Linux | Limiter une clé aux propriétés réelles de l’objet au lieu d’accepter une chaîne arbitraire. | | Sûr |
satisfiesWindows · macOS · Linux | Vérifier une configuration sans remplacer son type par une assertion ; disponible depuis TypeScript 4.9. | | Sûr |
RecordWindows · macOS · Linux | Décrire un dictionnaire. Une clé libre peut manquer à l’exécution : refléter cette absence dans le type. | | Sûr |
tableau vide typéWindows · macOS · Linux | Annoncer le type des éléments d’un tableau destiné à être rempli. Utile notamment pour les états de composants. | | Sûr |
as constWindows · macOS · Linux | Conserver des valeurs littérales et rendre les propriétés readonly au niveau du type ; ce n’est pas un gel à l’exécution. | | Sûr |
États et fonctions asynchrones
3 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
union discriminéeWindows · macOS · Linux | Distinguer les formes d’une réponse grâce à un champ commun littéral. | | Sûr |
neverWindows · macOS · Linux | Faire échouer la compilation si un nouveau cas n’est pas traité dans un switch exhaustif. | | Sûr |
Promise et awaitWindows · macOS · Linux | Une fonction async renvoie une Promise : attendre son résultat avant de l’utiliser. | | Sûr |
