Avatar ·

Erreur TypeScript : Type 'string | undefined' is not assignable to type 'string' — comment corriger ?

Bonjour ! Je suis débutant en TypeScript et j'ai rencontré une erreur que je ne comprends pas. J'ai une interface pour un utilisateur où le champ `name` est optionnel (peut être `undefined`). J'essaie de récupérer ce nom et de le passer à une fonction qui n'accepte qu'une chaîne de caractères, mais TypeScript se plaint. Voici mon code : ```typescript interface User { id: number; name?: string; // champ optionnel } function greet(name: string) { console.log(`Bonjour, ${name} !`); } const user: User = { id: 1, name: 'Anna' }; greet(user.name); // Erreur : Type 'string | undefined' is not assignable to type 'string' ``` Je pensais que si le champ `name` existe, c'est forcément une chaîne. Mais le compilateur dit que c'est `string | undefined`. Pourquoi cela se produit-il et comment gérer correctement cette situation ? J'ai essayé d'ignorer l'erreur avec `// @ts-ignore`, mais c'est une mauvaise pratique. Pouvez-vous me dire comment faire correctement pour que le code soit type-safe ? Y a-t-il plusieurs façons de résoudre ce problème ? Merci d'avance pour votre aide !