gpt4 book ai didi

reactjs - TypeScript 模板文字类型解析错误

转载 作者:行者123 更新时间:2023-12-04 07:22:02 25 4
gpt4 key购买 nike

我正在尝试制作 type test成为枚举的联合 ModalTypes ' 值。根据文档,我应该可以写一个 type test就像在评论行中一样。它似乎产生了我想要的正确类型,但它给了我一个编译错误。如果我手动编写联合,如图所示,一切都会按预期进行。我错过了什么?
Code snippet
这是我得到的错误 Parsing error: Type expected .虽然我在代码中没有得到任何波浪线。
Error
您可以清楚地看到 test 正在成为我所针对的字符串类型联合。但它给了我上面的错误。
Code snippet
相同的代码,在文本中...

export enum ModalTypes {
USER = 'user',
NOTE = 'note',
REMINDER = 'reminder',
CONTRACT = 'contract',
}

type test = `${ModalTypes}`;
// type test = 'user' | 'note' | 'reminder' | 'contract';
type req = {
[key in test]: {
try: string;
};
};

最佳答案

在你的情况下,为什么不使用类似的东西:

// 'USER' | 'NOTE' | ...
type Key = keyof typeof ModalTypes;
// basically an alias for ModalTypes
type Value = (typeof ModalTypes)[Key];
值得一提的是您的 ModalTypes “类型”已经代表您的枚举值的联合。因此 Value基本上是 ModalTypes 的复杂别名.您的枚举类型已经是其值的联合,可以在这里看到:
type Omitted = Exclude<Value, 'user'>;
// Mousing over the above gives the following hint in VS Code:
type Omitted = ModalTypes.NOTE | ModalTypes.REMINDER | ModalTypes.CONTRACT

关于reactjs - TypeScript 模板文字类型解析错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68432364/

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