ararb78
ararb78

Reputation: 1175

Why do I get the error Type '"x"' is not assignable to type "type Enum"

I have declared this in a file .ts,

export enum TipoAccesoDia {
    Menos300 = "menos de 300",
    Entre300y600 = "entre 300 y 600",
    Mas600 = "más de 600",   }

I don't understand why it gives the following error:

 Type '"menos de 300"' is not assignable to type 'TipoAccesoDia'.
 Type '"entre 300 y 600"' is not assignable to type 'TipoAccesoDia'.
 Type '"más de 600"' is not assignable to type 'TipoAccesoDia'.

¿Any idea?

Upvotes: 0

Views: 574

Answers (1)

FlowYourMind
FlowYourMind

Reputation: 91

Are you trying to do something like const type: TipoAccesoDia = 'menos de 300';?

Because in that case, what you need to do is const type: TipoAccesoDia = TipoAccesoDia.Menos300;

That happens because 'menos de 300' is type string, and not TipoAccesoDia.


If you still prefer to fo it like in the first example, you should use magic strings (type TipoAccesoDia = "menos de 300" | "entre 300 y 600" | "más de 600"), but I don't suggest it.

Upvotes: 1

Related Questions