TypeScript त्रुटि: Type 'string' is not assignable to type — इसे कैसे ठीक करें?
सभी को नमस्ते! मैंने अभी TypeScript सीखना शुरू किया है और एक अजीब त्रुटि का सामना किया। मेरे पास उपयोगकर्ता के लिए एक interface है:
```typescript
interface User {
name: string;
age: number;
role: 'admin' | 'user';
}
```
मैं फॉर्म से प्राप्त डेटा से एक उपयोगकर्ता ऑब्जेक्ट बनाने का प्रयास कर रहा हूँ। डेटा strings के रूप में आता है (यहाँ तक कि age भी input से एक string है)। मैंने ऐसा कोड लिखा:
```typescript
const formData = {
name: 'Иван',
age: '25', // string, जबकि number होना चाहिए
role: 'admin'
};
const user: User = {
name: formData.name,
age: formData.age, // त्रुटि: Type 'string' is not assignable to type 'number'
role: formData.role // त्रुटि: Type 'string' is not assignable to type '"admin" | "user"'
};
```
TypeScript age और role पर त्रुटि दे रहा है। मैं समझता हूँ कि age एक number होनी चाहिए, और role सख्ती से 'admin' या 'user' होना चाहिए, लेकिन types को सही तरीके से कैसे बदलूँ? मैंने `as` का उपयोग करने की कोशिश की — यह काम करता है, लेकिन सुना है कि यह बुरी प्रथा है। कृपया बताएँ कि इसे सही तरीके से कैसे हल करें।