Cómo convertir una string a enum en TypeScript?
¡Hola a todos! Soy nuevo en TypeScript y me encontré con un problema al trabajar con enumeraciones (enum). Tengo un enum para los estados de pedido:
```typescript
enum OrderStatus {
Pending = "pending",
Processing = "processing",
Shipped = "shipped",
Delivered = "delivered",
Cancelled = "cancelled"
}
```
Recibo un estado de la API como string, por ejemplo `"processing"`. Necesito convertir esta string de vuelta al valor del enum para usarlo en un switch/case o compararlo con otros valores. El casteo simple con `as OrderStatus` funciona de manera inestable: si la string no coincide con ninguno de los valores, el código no arroja un error de compilación, pero en runtime ocurre un comportamiento impredecible.
También probé usar `OrderStatus["processing"]`, pero esto devuelve `undefined`. ¿Cómo convertir correctamente y de forma segura una string a enum? Necesito una solución que verifique si ese valor existe en el enum, y que arroje un error o devuelva un valor por defecto.
No answers yet.
Inicia sesión para dejar una respuesta
Blogs