gpt4 book ai didi

javascript - Typescript 枚举输入错误(类型 'string' 的参数不可分配给类型的参数)

转载 作者:行者123 更新时间:2023-12-01 00:31:23 24 4
gpt4 key购买 nike

我有一个枚举定义如下:

export enum taskTypes {
WORK = 'work',
SLEEP = 'sleep',
EXERCISE = 'exercise',
EAT = 'eat'
}

在类的顶部,我定义了 currentTask 如下:

private currentTask: string;

但是,当我在 [WORK, SLEEP].includes(currentTask) 中使用枚举时,出现以下错误。

“string”类型的参数不可分配给“currentTask”类型的参数

奇怪的是,当我只是将其更改为使用实际字符串时,它不会提示。

['work', 'sleep'].includes(currentTask) ===> 这个有效。

那么我在这里缺少什么?

最佳答案

currentTask 是字符串类型,但 WORKSLEEPtaskTypes 类型的枚举成员

所以[WORK, SLEEP]是一个taskTypes枚举数组。这样的数组永远不能包含字符串。

['work', 'sleep'] 是一个字符串数组,其中可以包含一个字符串。

如果您输入 taskTypes 类型的私有(private)成员,它也可以工作

private currentTask: taskTypes

关于javascript - Typescript 枚举输入错误(类型 'string' 的参数不可分配给类型的参数),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58494753/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com