Avatar ·

Erro TypeScript: Type 'string' is not assignable to type — como corrigir?

Olá a todos! Comecei a aprender TypeScript e me deparei com um erro estranho. Tenho uma interface para o usuário: ```typescript interface User { name: string; age: number; role: 'admin' | 'user'; } ``` Estou tentando criar um objeto de usuário a partir de dados obtidos de um formulário. Os dados vêm como strings (até a idade é uma string do input). Escrevi o seguinte código: ```typescript const formData = { name: 'Иван', age: '25', // string, mas deveria ser número role: 'admin' }; const user: User = { name: formData.name, age: formData.age, // erro: Type 'string' is not assignable to type 'number' role: formData.role // erro: Type 'string' is not assignable to type '"admin" | "user"' }; ``` O TypeScript reclama de age e role. Entendo que age deve ser um número e role estritamente 'admin' ou 'user', mas como converter os tipos corretamente? Tentei usar `as` — funciona, mas ouvi dizer que é uma má prática. Digam-me como resolver isso de forma adequada.