Avatar ·

Comment vérifier si une valeur existe dans un enum en TypeScript ?

Bonjour à tous ! Je viens de commencer à apprendre TypeScript et j'ai rencontré un problème en travaillant avec les enums. J'ai ce code : ```typescript enum Color { Red = 'RED', Green = 'GREEN', Blue = 'BLUE' } // Je reçois une valeur d'une source externe (par exemple, d'une API) const userInput: string = 'RED'; // ou peut-être 'YELLOW' // Je dois vérifier si userInput est une valeur valide de Color if (userInput === Color.Red) { console.log('C'est rouge'); } ``` Mais le problème est que si je reçois une valeur qui n'est pas dans l'enum (par exemple, 'YELLOW'), je dois gérer correctement cette situation. J'ai essayé d'utiliser `Object.values(Color).includes(userInput)`, mais TypeScript se plaint que `userInput` est de type `string`, pas `Color`. Dites-moi, s'il vous plaît, comment vérifier correctement si une valeur existe dans un enum ? Dois-je utiliser des utilitaires spéciaux ou existe-t-il une solution simple ? Merci d'avance ! P.S. J'utilise des string enums, mais il serait utile de savoir aussi pour les autres types.