ts-expect-error vs ts-ignore

TypeScript 🟡 Mid

Définition

@ts-expect-error supprime l'erreur suivante mais échoue si aucune erreur n'existe. @ts-ignore supprime silencieusement toute erreur. Préférer expect-error.

Analogie

ts-expect-error: un parapluie qu'on range s'il ne pleut pas. ts-ignore: un mur anti-bruit permanent, même en silence.

Exemple de code

// @ts-expect-error: test avec mauvais type intentionnel
const result = fn("wrong");

// @ts-ignore: supprime toute erreur (dangereux)
const risky = badCode();

Cas d'usage

Tests ou le but est de vérifier le comportement avec des types invalides — expect-error est préférable.

Anti-pattern

Utiliser ts-ignore pour faire compiler du code — masque les vrais bugs et empêche la détection de régressions.

Termes liés

#best-practice#tooling

← → au clavier pour passer d'une fiche à l'autre