Comment convertir une chaîne de caractères en enum en TypeScript ?
Bonjour à tous ! Je suis nouveau en TypeScript et j'ai rencontré un problème en travaillant avec les énumérations (enum). J'ai un enum pour les statuts de commande :
```typescript
enum OrderStatus {
Pending = "pending",
Processing = "processing",
Shipped = "shipped",
Delivered = "delivered",
Cancelled = "cancelled"
}
```
Je reçois un statut de l'API sous forme de chaîne, par exemple `"processing"`. J'ai besoin de convertir cette chaîne en valeur d'enum pour l'utiliser dans un switch/case ou la comparer avec d'autres valeurs. Un simple cast de type avec `as OrderStatus` fonctionne de manière instable — si la chaîne ne correspond à aucune valeur, le code ne génère pas d'erreur de compilation, mais un comportement imprévisible se produit au runtime.
J'ai aussi essayé d'utiliser `OrderStatus["processing"]`, mais cela retourne `undefined`. Comment convertir correctement et en toute sécurité une chaîne en enum ? J'ai besoin d'une solution qui vérifie si la valeur existe dans l'enum, et qui lève une erreur ou retourne une valeur par défaut.