Verifique se um valor existe em um Enum do Typescript
Os Enums do Typescript são transformados em objetos que se parecem com isto:
ts
// enum
enum Vehicle {
Car = 'car',
Bus = 'bus',
Train = 'train',
Subway = 'subway'
}
// é transformado em um objeto assim
{
Car: 'car',
Bus: 'bus',
Train: 'train',
Subway: 'subway'
}
Portanto, podemos verificar se um valor existe neles usando Object.values(...)
.
ts
const car = Vehicle.Car;
Object.values(Vehicle).includes(car); // true
Object.values(Vehicle).includes('motor'); // false