【问题标题】:Why do I get the error Type '"x"' is not assignable to type "type Enum"为什么我会收到错误 Type '"x"' is not assignable to type "type Enum"
【发布时间】:2021-02-08 13:11:08
【问题描述】:

我已在文件 .ts 中声明了这一点,

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

我不明白为什么会出现以下错误:

 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'.

¿有什么想法吗?

【问题讨论】:

标签: angular typescript enums


【解决方案1】:

您是否正在尝试做类似const type: TipoAccesoDia = 'menos de 300'; 的事情?

因为在那种情况下,你需要做的是const type: TipoAccesoDia = TipoAccesoDia.Menos300;

这是因为'menos de 300'string 类型,而不是TipoAccesoDia


如果你仍然喜欢像第一个例子那样,你应该使用magic strings (type TipoAccesoDia = "menos de 300" | "entre 300 y 600" | "más de 600"),但我不建议这样做。

【讨论】:

    猜你喜欢
    • 2022-12-02
    • 2022-11-20
    • 2022-01-26
    • 2022-09-22
    • 2022-12-27
    • 2022-12-27
    • 2022-12-19
    • 2020-08-27
    • 2020-01-23
    相关资源
    最近更新 更多