O que é Record no TypeScript e como usá-lo corretamente?
Olá a todos! Recentemente comecei a estudar TypeScript e me deparei com o tipo embutido `Record`. Li a documentação, mas não entendi completamente sua essência e quando aplicá-lo.
Eu entendo que existem interfaces e tipos, mas `Record` parece ser diferente. Por exemplo, vi este código:
```typescript
const users: Record = {};
```
Mas não entendo como isso difere de um objeto simples `{ [key: string]: User }`. Ou de `Map`? Quando escolher qual?
Meu problema específico: tenho uma lista de status de pedido (pending, approved, rejected), e para cada status preciso armazenar algum texto (por exemplo, cor para exibição). Escrevi assim:
```typescript
const statusColors = {
pending: 'yellow',
approved: 'green',
rejected: 'red'
};
```
Mas o TypeScript reclama quando tento acessar `statusColors['unknown']`. Como tipar corretamente esse map usando `Record`? E, no geral, para quais cenários `Record` é mais adequado? Ficarei grato pela ajuda.
No answers yet.
Faça login para deixar uma resposta
Blogs