TypeScript में स्ट्रिंग को enum में कैसे बदलें?
सभी को नमस्ते! मैंने अभी TypeScript सीखना शुरू किया है और enum के साथ काम करते समय एक समस्या का सामना किया। मेरे पास ऑर्डर स्थितियों का वर्णन करने वाला एक enum है:
```typescript
enum OrderStatus {
Pending = 'pending',
Processing = 'processing',
Shipped = 'shipped',
Delivered = 'delivered',
Cancelled = 'cancelled'
}
```
मुझे API से एक स्ट्रिंग मिलती है (जैसे सर्वर के JSON response से), जिसमें स्थिति का मान होता है, उदाहरण के लिए `'shipped'`। मुझे इस स्ट्रिंग को वापस `OrderStatus` प्रकार में बदलना है ताकि इसे switch-case में उपयोग कर सकूं या किसी फ़ंक्शन में पास कर सकूं जो इस enum की अपेक्षा करता है।
समस्या यह है कि सीधा असाइनमेंट काम नहीं करता:
```typescript
const statusFromApi: string = 'shipped';
const orderStatus: OrderStatus = statusFromApi; // त्रुटि: Type 'string' is not assignable to type 'OrderStatus'
```
मैंने type casting (`as OrderStatus`) का उपयोग करने की कोशिश की, लेकिन यह असुरक्षित लगता है — अगर कोई ऐसी स्ट्रिंग आती है जो enum में नहीं है, तो कोई त्रुटि नहीं होगी, लेकिन व्यवहार